文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Android实战基础 - Java、Kotlin 代码互转

2023-09-24 12:05

关注

在Android现阶段,Kotlin已经成为普遍性使用的语言,而在其使用阶段中Java和Kotlin的混用很常见,为了便于开发,我们需要掌握Java、Kotlin文件的转换

这应该是我以前刚学Kotlin时就想记录的一篇blog,没想到隔了这么久才进行记录(嗯… 主要这俩年好像有点忙…)

个人建议:正常有 Java、Kotlin 转换需求的话,首先将原始文件进行备份,防止转换效果不理想,而造成无法回退的情况;同时如果有原始文件的话,我们也可以更好的对比转换前后的结果,看是否存在一些出入;还有就是转换的结果未必能百分百复用,有时候还是要酌情处理、修复...

Demo 结构示例

我为了确定双向转换的结果,创建了一个Demo,内部包含一个Java类、一个Kotlin类 ~

在这里插入图片描述

Java → Kotlin

起初我仅认为支持单个Java 转 Kotlin,但是尝试过后发现Java文件可以批量转Kotlin文件

Look Here :转换方式都是基于顶部Code标签栏的 Convert Java File to Kotlin File(快捷键 - Ctrl+Alt+Shift+K)

Java类示例

在这里插入图片描述

单类转换

其实除了以下俩种方式之外,还有一种方式,你可能也经常无意识的用到了,因为现在还有很多用Java写的代码,当我们习惯性把Java代码 copy 到 Kt 类的时候,有时候AndroidStudio会提示自动转换(若不提示,可先将代码copy到java类,然后在从java类copy到Kt类),所以这也可以算是一种Java → Kt 的方式

俩种方式本质相同,区别只是个人习惯问题;

方式一:选择Java类 → 顶部Code → Convert Java File to Kotlin File

在这里插入图片描述

方式二:选择Java类 → 右键 → Convert Java File to Kotlin File(推荐:便捷)

在这里插入图片描述

当执行 Convert Java File to Kotlin File 操作后,会弹出 Java → Kotlin 提示弹框,点击 Yes 就可以

在这里插入图片描述

转换结果

在这里插入图片描述


批量转换

其实转换的方式是一样的,都是通过Convert Java File to Kotlin File,只是执行该操作的层级有所不同!后续也会弹出 Java → Kotlin 提示弹框,点击 Yes 就可以,最终的转换结果也相同

常规的层级,大多如图例所示

在这里插入图片描述

选择对应层级 → 右键 → Convert Java File to Kotlin File(推荐:便捷)

在这里插入图片描述


Kotlin → Java

我尝试查看了一下 Kotlin → Java批量转换右键转换,发现好像都不支持,所以就用下方这种方式吧

Kotlin类示例

在这里插入图片描述

操作方式

  1. 选择Kotlin类 → 顶部Tools → Kotlin → Show Kotlin Bytecode

在这里插入图片描述

  1. 一般右侧弹出 Kotlin Bytecode 操作栏, 点击 Decompile 即可完成转换

在这里插入图片描述

  1. 到此,其实算是初步转换完成了,红色标记处就是我们可用的部分

在这里插入图片描述

  1. 正常在开发中,我们需要新建一个Java类,然后将转换后的代码Copy过去(之前说过转换的结果未必能直接使用,类似下方的layout就需要我们进行修补,这里的话 改成Kt原始类 R.layout.activity_main 即可

在这里插入图片描述

来源地址:https://blog.csdn.net/qq_20451879/article/details/127996852

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-移动开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯