kotlin入门 (三) 变量以及其他,哎,这么多?!不,其实只有一点点

我浏览了官网在线的例子,还有一大堆文档,大都是用实例来做教程的,可以直接运行的,很方便,自学能力强的朋友可以直接去看。

顺便说一下,关于分号,kotlin似乎不强制取消分号,也就是说如果存在的话也是可以的,我在helloworld程序后面加了也没影响(强迫症的福音?)。

顺便说一下2,上次的"println()"函数是输出一行字符串,他是由两个词组成 print+line,line被简写了。

开始今天的学习

一 在变量类型之前

一般教程开始之前会说int,string,long之类的,但是kotlin似乎不行,在变量之前有一个设定,就是var和val。

1 先说var,var的官方解释是“Mutable variable:”,可以更改的变量。

2 无论是val还是var变量是可以自己探测的(kotlin真的不是脚本语言吗,啊喂),是的,你可以不用设定具体的类型,他可以自己检测,就目前的string和int类型来看是可以的,数组没有试。这里具体解释下,就是说比如java或者c#都需要string i =‘hello’ 大概这样声明变量,kotlin就不用,直接像js那样 var i=‘hello’。


kotlin入门 (三) 变量以及其他,哎,这么多?!不,其实只有一点点_第1张图片

2 val不可更改变量“Assign-once (read-only) local variable:”官文的意思是只读例子和上面相似,就不放图片了,把var改成val,不过我不太信val不可更改,去做了试验,然后灰溜溜的信了。

代码“vala =11;a =22;println(a)"

报错“Error:(4, 5) Kotlin: Val cannot be reassigned”

二 变量

不明白的同学先记var吧,比较常用。

变量可以说是一个程序里头最常见的要素,变量也是老生长谈了,感觉能讲的也不多,我又不想想视频教程那样及其罗嗦的给出奇奇怪怪的例子。所以仅仅简单介绍下,甚至于生搬硬套官网的文档了。

上面也提到,由于kotlin可以不设定具体变量类型,所以某种程度上很多变量不需要声明具体类型来着?(猜测),喂喂,如果这是真的,真玩意儿真的不是脚本语言吗?

根据官网,基础类型大类型分为

number(数字相关),包括传统的:double,float,long,int,byte 等

string(字符串),  Characters(char类型),  Booleans(逻辑),   array(数组)。

由于大体上都是直接赋值用,数组这类先不管,总之就是var i = string/int;先记着这两个。

三 有关于?,关于空值/空指针错误

在java里头,string=null 编译是不报错的,运行才报错,kotlin则不是,编辑器会在编译期间报错。

在官方例子中,有一个奇怪的写法,比如说:

val boxedA:Int?=a


这里的“?=”不一般,算是kotlin一个特色,意思是这个变量允许为空。一般来说,我们建立一个变量,比如初始化变量的时候,或者说在某个运行期间由于某个操作变成了空指针,说了半天原因感觉还是没说清楚,总之就是不可考了,kotlin加了这么一个机制,?=代表了这个变量是否允许为空。


讲到这里,变量基本上可以用了,再加点控制操作就可以开发一些好玩的东西了。

我建了个群,欢迎大家互相学习Q 452495830

你可能感兴趣的:(kotlin入门 (三) 变量以及其他,哎,这么多?!不,其实只有一点点)