如何区分 Java 和 Kotlin 代码?
How to tell the difference between Java and Kotlin code?
作为 Android 应用程序开发的初学者,我发现无法确定它们是用 Java 还是 Kotlin 编写的代码示例。甚至 Whosebug 问题也经常省略语言标记。
代码中是否有一个简单的“告诉”,您可以立即看到使用的是哪种语言?例如,我可以从语法、头文件使用和库函数的某些元素很快区分 C 和 C++。
有什么快速和“明显”的方法可以区分 Java 和 Kotlin?我想探索 Kotlin,而不是通过研究不相关的代码来增加我的(巨大的)困惑。
Java 有强制分号 ';'而科特林没有。 Java 中的类型是 int、string、char 等,而在 Kotlin 中它们是大写的(String、Int、Long、Char),而且 Kotlin 大多数时候可以推断变量的类型 ;)
如果代码使用了“val”、“var”关键字,那么 99% 是 Kotlin。
kotlin 的一些明显特征:
如前所述,最明显的是分号,尽管您可以
添加它们,它们将被忽略
用问号标记的变量(可空性)val foo:String?
和val/var/lateinit
的用法
class Foo : Something() <-- 这是继承,没有 extends
或 implements
如果涉及文件,kotlin文件以.kt结尾
对companion object
的任何引用
个人对我来说最大的指标:
有趣 :) 函数声明 :
fun foo(): String
我找到了 this article helpful
正如人们告诉科特林的那样,它是一种由空安全引入且没有任何分号力的语言
你可以在语法中找到一些关键,比如
**[fun,as,let,also,apply,val,var,lateinit,...]**
那么,哪个更好,您应该使用它吗?该问题的答案取决于您的需要。如果您正在寻找 Google 提供可靠支持的语言,那么 Kotlin 可能是最佳选择,因为 Android Studio 3 现在支持 Kotlin 开发。但是,如果您需要速度或想要一个具有更大灵活性的 open-source 项目(尤其是在 third-party 库方面),Java 可能是您的正确选择。
Kotlin 关键字和运算符。 https://kotlinlang.org/docs/keyword-reference.html
Java 语言关键字。 https://docs.oracle.com/javase/tutorial/java/nutsandbolts/_keywords.html
最有可能是科特林:
val
var
fun
nameX: TypeX
nameX : TypeX?
object:
open class
when
@
:
sealed
!!
->
"$name or ${name}"
etc
最有可能java:
; semicolon
TypeX nameX
void
extends
implements
public class
instanceof
etc
如果文件以.kt结尾,则为Kotlin.
作为 Android 应用程序开发的初学者,我发现无法确定它们是用 Java 还是 Kotlin 编写的代码示例。甚至 Whosebug 问题也经常省略语言标记。
代码中是否有一个简单的“告诉”,您可以立即看到使用的是哪种语言?例如,我可以从语法、头文件使用和库函数的某些元素很快区分 C 和 C++。
有什么快速和“明显”的方法可以区分 Java 和 Kotlin?我想探索 Kotlin,而不是通过研究不相关的代码来增加我的(巨大的)困惑。
Java 有强制分号 ';'而科特林没有。 Java 中的类型是 int、string、char 等,而在 Kotlin 中它们是大写的(String、Int、Long、Char),而且 Kotlin 大多数时候可以推断变量的类型 ;)
如果代码使用了“val”、“var”关键字,那么 99% 是 Kotlin。
kotlin 的一些明显特征:
如前所述,最明显的是分号,尽管您可以 添加它们,它们将被忽略
用问号标记的变量(可空性)
的用法val foo:String?
和val/var/lateinitclass Foo : Something() <-- 这是继承,没有
extends
或implements
如果涉及文件,kotlin文件以.kt结尾
对
的任何引用companion object
个人对我来说最大的指标:
有趣 :) 函数声明 :
fun foo(): String
我找到了 this article helpful
正如人们告诉科特林的那样,它是一种由空安全引入且没有任何分号力的语言
你可以在语法中找到一些关键,比如
**[fun,as,let,also,apply,val,var,lateinit,...]**
那么,哪个更好,您应该使用它吗?该问题的答案取决于您的需要。如果您正在寻找 Google 提供可靠支持的语言,那么 Kotlin 可能是最佳选择,因为 Android Studio 3 现在支持 Kotlin 开发。但是,如果您需要速度或想要一个具有更大灵活性的 open-source 项目(尤其是在 third-party 库方面),Java 可能是您的正确选择。
Kotlin 关键字和运算符。 https://kotlinlang.org/docs/keyword-reference.html
Java 语言关键字。 https://docs.oracle.com/javase/tutorial/java/nutsandbolts/_keywords.html
最有可能是科特林:
val
var
fun
nameX: TypeX
nameX : TypeX?
object:
open class
when
@
:
sealed
!!
->
"$name or ${name}"
etc
最有可能java:
; semicolon
TypeX nameX
void
extends
implements
public class
instanceof
etc
如果文件以.kt结尾,则为Kotlin.