一、初识kotlin之全局变量定义(kotlin学习笔记)

2 篇文章 0 订阅
2 篇文章 0 订阅

语法区别

kotlin与java在定义参数上的区别,如下全局变量的定义,请通过名称对应,同一个名称在kotlin中出现多次表示这个变量有多种定义方式

全局变量定义区别

  • Java
private final int num1 = 10;
private final String str1= "1234";
private int num2;
private String str2;
private Student student;

public static final int num3 = 10;
public static final String str1 = "str";
public static int num4 = 11;
public static int num5 ;
public static String str2;
  • kotlin
private val num1 = 10
private val str1= "1234"

private var num2 = 0 // kotlin中没有int,也没有Integer,只有Int,需要默认给 0
private num2 by Delegates.notNull<Int>() // 其他如Long,Double,Float等数字类型相似

private lateinit var str2: String
private var str2: String? = null

private var student: Student? = null // 实体、类等基本如此定义
private lateinit var student: Student

companion object {
    val num3 = 10
    val str1 = "str"
    var num4 = 11
    var num5 = 0 // 另外定义方法看前面
    var str2: String? = null // 另外定义方法看前面
}

通过以上可以很清楚的看出一些语法上的不同,主要体现在

  1. 不需要使用分号结尾
  2. 没有所谓的public,只要是加了private就是public
  3. static变量需要用 companion object {} 包裹才能在外部直接访问
  4. 没有int,double这些类型,所有的基础类型都是对象,相对与java来说更加的面向对象一些,即一切都是对象,所以在面对这些类型的时候我们需要给默认值0(其他也是可以哈,但是默认一般都是0,指在全局变量的情况下,局部变量可以不赋值)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

暴躁竹子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值