将Java转换为Kotlin错误后实施代码

将Java转换为Kotlin错误后实施代码,第1张

概述在我来这里之前,我已经尝试找到此问题是否在StackoverFlow上.我尝试将Java类转换为Kotlin,但AndroidStudio却做得不太好.我尝试手动执行此 *** 作,但未成功.这是Java中的原始代码privatestaticvoidappendHex(StringBuffersb,byteb){sb.append(HEX.charAt((b

在我来这里之前,我已经尝试找到此问题是否在StackoverFlow上.
我尝试将Java类转换为Kotlin,但Android Studio却做得不太好.

我尝试手动执行此 *** 作,但未成功.

这是Java中的原始代码

    private static voID appendHex(StringBuffer sb, byte b) {        sb.append(HEX.charat((b >> 4) & 0x0f)).append(HEX.charat(b & 0x0f));    }@H_404_13@

这是由AndroID Studio转换的代码

    private fun appendHex(sb: StringBuffer, b: Byte) {        sb.append(HEX[b shr 4 and 0x0f]).append(HEX[b and 0x0f])    }@H_404_13@

错误是在转换后,AndroID Studio无法识别shr&并且,当我按ALT ENTER时,它会显示一个d出窗口,用于创建扩展功能Byte.shr,按Enter后,它将创建一个私人娱乐:

private infix fun Byte.shr(i: Int): Any {    Todo("not implemented") //To change body of created functions use file | Settings | file Templates.}@H_404_13@

相同,但现在在d出窗口中,它具有一个导入选项,该选项指向导入kotlin.experimental.and或创建私人乐趣:

private infix fun Any.and(i: Int): Int {    Todo("not implemented") //To change body of created functions use file | Settings | file Templates.}@H_404_13@

执行完此 *** 作并运行我的应用后,该类无法使用消息 *** 作未实现:未实现

如何实施这项工作?

解决方法:

您可以在Kotlin中将运算符(中缀函数)shrand用于Int(和Long)类型.
只需使用b.toInt()更改b:

private fun appendHex(sb: StringBuffer, b: Byte) {    sb.append(HEX[b.toInt() shr 4 and 0x0f]).append(HEX[b.toInt() and 0x0f])}@H_404_13@          总结       

以上是内存溢出为你收集整理的将Java转换为Kotlin错误后实施代码全部内容,希望文章能够帮你解决将Java转换为Kotlin错误后实施代码所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1081691.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存