Kotlin------数据类型和语法

今天简单的来介绍Kotlin的基本语法。编程语言大多相通的,会基础学起来都很快,理论都一样,实现的代码语言不一样而已。

数值类型

Kotlin 处理数值的方法和 java 很相似,但不是完全一样。比如,不存在隐式转换数值的精度,并且在字面上有一些小小的不同。

Kotlin的数值类型包括

类型 位宽
Double 64
Float 32
Long 64
Int 32
Short 16
Byte 8

主要是以下几种字面值常量:

  • 十进制数:123
  • 长整型要加L:123L
  • 十六进制数:0x0f
  • 二进制数:0b00001011
  • Kotlin不支持八进制数
  • 双精度浮点数(Double):123.5 、 123.5e10
  • 单精度浮点数(Float)要加f或F:123.5f

布尔值

关键字Boolean,只有true和false两种取值,和Java一样可以使用&&||!进行与或非操作。

字符

关键字Char,和Java中char基本用法差别不大。

var useChar: Char = ‘c‘

数组

关键字Array,Kotlin中数组的使用和Java差别挺大,比如我要创建数组,就得使用arrayOf

//使用arrayOf简单创建数组
var students: Array<String> = arrayOf("One", "Tow", "Three")
var studentNums = arrayOf(1, 2, 3)

使用arrayOfNulls可以创建一个指定长度,元素内容为空的数组

//创一个长度为10,元素内容皆为null的数组
var emptyArray = arrayOfNulls<String>(10)

Kotlin对一些基础类型定义数组会有拆装箱的开销,所以也可以使用自身封装好的一些API进行创建数组,以降低开销

//创建一个int数组,避免封箱装箱操作
var intArray = intArrayOf(1, 2, 3)

Kotlin数组还支持使用闭包进行初始化,就像下面这样

//使用闭包初始化一个Array<String>,数组内容为["0", "1", "4", "9", "16"]
var asc = Array(5, { i -> (i * i).toString() })

字符串

关键字String,用法和Java差别不大。字符串是不可变的。

字符串的元素——字符可以使用索引运算符访问: s[i]。 可以用 for 循环迭代字符串:

var useString: String = "I am a boy"
var firstChar: Char = useString[0] //相当于Java的String.charAt(0)
for (c in useString) {
    println(c)//遍历
}
 

定义变量

Kotlin的变量分为可变和不可变,和Java中是否对变量声明final一样,它定义一个变量的语法如下:

格式: 可变类型 变量名:数据类型

  • 可变类型分为var、val两种,分别代表可变、不可变;
  • 数据类型包括Kotlin内置的数据类型以及自定义类deng ;
  • 定义变量时需要明确数据类型;

var,val可以简单理解为:

var 是可写的,在它生命周期中可以被多次赋值;

val 是只读的,仅能一次赋值,后面就不能被重新赋值。

/***Kotlin版代码***/
//定义可变变量
var id: Int = 1 //
var name: String = "字符串"
//定义不可变变量
val useVal: Int = 1000
/***Java版代码***/
int id = 1;
String name = "字符串";
final int useFinal = 1000;

Kotlin支持类型推到的,在Kotlin中大部分情况你不需要说明你使用对象的类型,编译器可以直接推断出它的类型。

  val str = "abc"
        println(str)
        println(str is String)
        println(str::class)
        println(str::class.java)

//        abc
//        true
//        class java.lang.String (Kotlin reflection is not available)
//        class java.lang.String

        val d = Date()
        println(d)
        println(d is Date)
        println(d::class)
        println(d::class.java)

//        Fri Jun 09 00:06:33 CST 2017
//        true
//        class java.util.Date (Kotlin reflection is not available)
//        class java.util.Date

        val bool = true
        println(bool)
        println(bool::class)
        println(bool::class.java)

//        true
//        boolean (Kotlin reflection is not available)
//        boolean

        val array = arrayOf(1,2,3)
        println(array)
        println(array is Array)
        println(array::class)
        println(array::class.java)

//        [Ljava.lang.Integer;@7b5eadd8
//        true
//        class [Ljava.lang.Integer; (Kotlin reflection is not available)
//        class [Ljava.lang.Integer;
时间: 2024-08-01 17:15:51

Kotlin------数据类型和语法的相关文章

Python笔记1#Python数据类型、语法和函数

▲python语法 以#开头的语句是注释,解释器(CPython)会忽略掉注释 当语句以:结尾时,下行缩进的语句视为代码块.默认缩进4个空格 缩进的利:强迫写出格式化的.缩进较少的代码 缩进的弊:重构代码时复制粘贴功能失效 Python中,通常用全部大写的变量名表示常量 ▲转义字符\ \n表示换行,\t表示制表符,\\表示\,\'表示普通字符',\"表示普通字符" ▲格式化字符串的输出 在字符串内部,%s表示用字符串替换,%d表示用整数替换,%f表示用浮点数替换,%x表示用十六进制整数

Kotlin 数据类型

Kotlin 的常见数据类型: 类型 范围 byte -128~127 short 32767-32768 int -2147483648~2147483647 long 9223372036854775807-9223372036854775808 float 小数点6位 double 小数点后16 string 无 验证代码: fun main(agrs : Array<String>) { var B:Byte= Byte.MAX_VALUE; println("max:&qu

web前端(14)—— JavaScript的数据类型,语法规范1

编辑器选择 对js的编辑器选用,有很多,能对html编辑的,也能对js编辑,比如notepad++,visual studio code,webstom,atom,pycharm,sublime text,Hbuilder等等的,根据你的喜好来就行 调试 在我们编写js时,也可以像调整css样式一样的在线编辑,在每个浏览器的调试界面(按快捷键f12可以直接打开,或者右键鼠标-检查)里,都可以直接进行js的编写调试 例: 以上的语法您暂且可以忽略,因为下面紧接着就会讲解到 变量 稍微对编程开发有点

web前端(15)—— JavaScript的数据类型,语法规范2

Object对象 说这个对象之前,如果您对编程语言开发稍微有点了解的话,应该知道面向对象是什么意思,而js也有面向对象一说,就因为如此,js才会这么强大. 什么是面向对象 其实所有支持面向对象的编程语言,对于这个面向对象的概念都一样的,所以你学会了此概念,理解其他任何语言的面向对象都很简单,所以我这里也不再废话了,可以看我之前的Python部分关于面向对象的讲解:传送门 创建对象的几种方法: 使用Object或对象字面量创建对象 工厂模式创建对象 构造函数模式创建对象 原型模式创建对象 最常用的

Java数据类型、语法和代码块

java基础 类(class)语法元素 public class HelloWorld{?} public class 是类修饰词 helloWorld是类名,要与文件名一致 大括号内是类得内容 main方法(main method)语法元素 public class HelloWorld{  public static void main(string[] args){? }} public static void是方法修饰词 小括号内是方法的参数(parameter) String[] ar

Python数据类型和语法

基本数据类型 Python有五个标准的数据类型: Numbers(数字) String(字符串) List(列表) Tuple(元组) Dictionary(字典) shell好像无明显的数据类型区分 Python支持四种不同的数值类型: int(有符号整型) long(长整型[也可以代表八进制和十六进制]) float(浮点型) complex(复数) 下面重点介绍字符串,列表,元组和字典三种数据类型 字符串 重点在于截取功能: #!/bin/python #string testing st

【kotlin】基本语法when的使用,类似于java中的switch,但是又青出于蓝而胜于蓝

when(要判断的参数){ 参数值为1 ->做这种事情 参数值为2 ->做另一种事情 else -> 类似于switch中的default } 扩展使用:https://www.cnblogs.com/Jetictors/archive/2017/10/24/7721886.html 原文地址:https://www.cnblogs.com/sxdcgaq8080/p/8686675.html

Kotlin基本语法和使用

Kotlin 是一个基于 JVM 的新的编程语言,由 JetBrains 开发.与Java相比,Kotlin的语法更简洁.更具表达性,而且提供了更多的特性. Kotlin是使用Java开发者的思维被创建的,Intellij作为它主要的开发IDE.对于 Android开发者,有两个有趣的特点: 对Java开发者来说,Kotlin是非常直觉化的,并且非常容易学习.语言的大部 分内容都是与我们知道的非常相似,所以能迅速地掌 握它. AndroidStudio作为目前最流行的Android开发工具,能够

Kotlin开发基础从0开始(一)

为什么学习kotlin kotlin在今年的Google IO 上正式被确认为Android的官方开发语言,想必原因大家也能猜到一二,一是Google与oracle关于Java相关的版权相关的问题,二是kotlin语言很简洁,不罗嗦,支持很多的新特性. 由于Google都已经官方支持了,语法简洁高效,和IOS的 swift 很是相似,发展趋势不可小觑,还有个大新闻就是我们的大神 Jake Wharton 从square 辞职加入了Google,且其在最近的github中国fork了kotlin