Kotlin学习02-变量、常量、整数、浮点数、操作符、元组、包、导入

变量、常量、整数、浮点数、操作符、元组、包、导入

Book.kt

kt 复制代码
package com.wujialiang.pack

class Book {
    var title: String = "Hello"
}

val PI = 3.14;
val E = 2.178;

Main.kt

kt 复制代码
//引入包
//import com.wujialiang.pack.Book;
import com.wujialiang.pack.*;
//重命名导入
import com.wujialiang.pack.Book as TestBook;
fun addPIAndE()=PI+E;

fun main() {
    //常量
    val constant = "我是常量";
    //constVar ="我要改变";
    println(constant);
    //变量
    var variable = "我是变量";
    println(variable);
    variable = "我能改变";
    println(variable);
    //整数类型
    val int: Int = 1;
    println(int);
    val long: Long = 1L;
    println(long);
    val double: Double = 1.0;
    println(double);
    val float: Float = 1.0f;
    println(float);
    val octal: Int = 0xACF;
    println(octal);
    val hexadecimal: Int = 0b01010111;
    println(hexadecimal);
    //类型转换
    val intToLong = int.toLong();
    println(intToLong);
    val intToChar = 97.toChar();
    println(intToChar);
    //左移 1左移2
    val result1 = 1 shl 2;
    println(result1);
    //右移 1右移2
    val result2 = 1 shr 2;
    println(result2);
    //无符号右移
    val result3 = 1 ushr 2;
    println(result3);
    //与或非异或
    val result4 = 1 and 0x00001111;
    println(result4);
    val result5 =  1 or 0x00001111;
    println(result5);
    val result6 = 1 xor 0x00001111;
    println(result6);
    //取反
    val result7 = 1.inv();
    println(result7);
    val pi = 3.1415926;
    println("圆周率为${pi}");
    val bool:Boolean = false;
    println(bool);
    //元组
    val grade = Triple("一级","二级","三级");
    println("${grade.first}-${grade.second}-${grade.third}");
    //可空类型
    var address:String? = null;
    address="济南市";
    println(address);
    var a =3;
    a = -100;
    println(+a)//-100
    println(-a)//100
    //操作符 + - * / % -= += *= /= > < >= <= ==
    var r=1;
    r /=1;
    println(r);
    //import导入和重命名
    val result8 = addPIAndE();
    println(result8);
    val book =  TestBook();
    println(book.title);
}
相关推荐
啦啦啦!几秒前
RAG初阶学习
学习·ai·知识库·rag
Brilliantwxx12 分钟前
【STM32】 SPI Flash 驱动开发实战:阻塞模式驱动 W25Q64(含工程代码)
开发语言·stm32·单片机·嵌入式硬件
外收内放20 分钟前
数据分析(jupyter与pandas初体验)
python·学习
wuyk55522 分钟前
【Socket 进阶之路】第 9 章 Linux 网络服务量产稳定性优化|心跳保活、TIME_WAIT、SO_LINGER、内存池、断线重连、完整异常防护框架
linux·服务器·开发语言·网络·物联网
zhangrelay31 分钟前
《机器人控制器设计与编程》课程习题资料-2026
linux·笔记·学习·ubuntu
邪修king31 分钟前
Re:Linux 系统篇(三十四):进程间通信开篇Chapter1 —— 匿名管道 pipe 深度拆解与代码实战
android·linux·运维·开发语言
孙启超1 小时前
【AI开发之Rust】第 13 课:async/await 与 tokio 异步运行时
开发语言·后端·rust
kkkkkkkkkk_Z1 小时前
新手自学嵌入式|学习日记:从C语言到51单片机基础(GPIO、中断、定时器与PWM篇)
linux·笔记·学习·51单片机