Kotlin 极简小抄 P2(插值表达式、运算符、选择结构赋值)

news/2024/9/19 19:28:46/ 标签: kotlin, 开发语言, android, 后端, java, 安卓

一、Kotlin

  1. Kotlin 由 JetBrains 开发,是一种在 JVM(Java 虚拟机)上运行的静态类型编程语言

  2. Kotlin 旨在提高开发者的编码效率和安全性,同时保持与 Java 的高度互操作性

  3. Kotlin 是 Android 应用开发的首选语言,也可以与 Java 一样用于服务器端开发


二、Kotlin 极简小抄

1、插值表达式
kotlin">// 插值var a: Byte = 10
var b: Short = 20
var c: Int = 30
var d: Long = 40Lprintln("Hello, $a") // Hello, 10
println("Hello, $b") // Hello, 20
println("Hello, $c") // Hello, 30
println("Hello, $d") // Hello, 40
kotlin">// 插表达式var num = 10println("result: ${num * num}") // result: 100
2、运算符
kotlin">// 算术运算符:加法、减法、乘法、除法、求余var a: Int = 5
var b: Int = 3var result1 = a + b
var result2 = a - b
var result3 = a * b
var result4 = a / b
var result5 = a % bprintln(result1) // 8
println(result2) // 2
println(result3) // 15
println(result4) // 1
println(result5) // 2
kotlin">// 关系运算符:大于、小于、等于、不等于、大于等于、小于等于var x = 10
var y = 20println(x > y) // false
println(x < y) // true
println(x == y) // false
println(x != y) // true
println(x >= y) // false
println(x <= y) // true
kotlin">// 逻辑运算符:逻辑与、逻辑或、逻辑非var a = true
var b = falseprintln(a && b) // false
println(a || b) // true
println(!a) // false
kotlin">// 赋值运算符var a = 5
println(a) // 5a += 3 // 等同于 a = a + 3
println(a) // 8a -= 2 // 等同于 a = a - 2
println(a) // 6a *= 2 // 等同于 a = a * 2
println(a) // 12a /= 4 // 等同于 a = a / 4
println(a) // 3a %= 2 // 等同于 a = a % 2
println(a) // 1
kotlin">// 位运算符:位与、位或、位异或、位非、左移、右移var a = 60 // 0011 1100
var b = 13 // 0000 1101println("a & b = ${a and b}") // 12(0000 1100)
println("a | b = ${a or b}") // 61(0011 1101)
println("a ^ b = ${a xor b}") // 49(0011 0001)
println("a << 2 = ${a shl 2}") // 240(0011 0001)
println("a >> 2 = ${a shr 2}") // 15(0000 1111)
3、递增递减
kotlin">var a: Int = 5
var b: Int = 3// 相当于 a += 1
var result1 = a.inc()
println(result1)// 相当于 a -= 1
var result2 = b.dec()
println(result2)
kotlin">var a: Int = 5
var b: Int = 3a++
println(a)b--
println(b)
4、选择结构赋值
kotlin">// if-else 条件赋值val num = 10val result = if (num > 0) true else falseprintln(result) // true
kotlin">// when 条件赋值var level = 2;val result = when (level) {1 -> "休闲难度"2 -> "普通难度"3 -> "老兵难度"4 -> "不可能难度"else -> "未知难度"
}println(result) // 普通难度

http://www.ppmy.cn/news/1527739.html

相关文章

docker-compose 之 redis-stack

介绍 ‌ Redis和Redis Stack的主要区别在于功能和适用场景‌ ‌功能差异‌&#xff1a; Redis是一个开源的内存数据结构存储系统&#xff0c;主要用作数据库、缓存和消息代理&#xff0c;支持多种数据结构如字符串、列表、集合等&#xff0c;并提供丰富的操作命令&#xff0c…

Python--常见的数据格式转换

下面是几个常见的数据格式转换的示例&#xff0c;涵盖了一些常用的格式&#xff0c;如 CSV、XML、YAML 等。每个示例都会介绍如何从一种格式转换到另一种格式。 1. CSV 转 JSON CSV 文件通常以逗号分隔&#xff0c;行代表记录&#xff0c;列代表字段。我们可以使用 csv 和 js…

C++:动态内存分配(new、delete 相比 malloc、free的优势)与运算符重载

动态内存分配与运算符重载 一、动态内存分配&#xff08;一&#xff09;内存的分类&#xff08;二&#xff09;动态内存分配函数(1)new 和delete 的使用&#xff08;1&#xff09;new 的原理&#xff08;2&#xff09;delete 的原理 2、 operator new与operator delete&#xf…

Unity实战案例全解析:PVZ 植物卡片状态分析

Siki学院2023的PVZ免费了&#xff0c;学一下也坏 卡片状态 卡片可以有三种状态&#xff1a; 1.阳光足够&#xff0c;&#xff08;且cd好了可以种植&#xff09; 2.阳光不够&#xff0c;&#xff08;cd&#xff1f;好了&#xff1a;没好 &#xff08;三目运算符&#xff09;&…

物联网在线监测平台如何保障数据安全?

物联网在线监测平台在保障数据安全方面采取了一系列措施,以确保数据的机密性、完整性和可用性。以下是一些关键的保障措施: 1. 数据加密 传输加密:使用SSL/TLS等安全协议对传输过程中的数据进行加密,防止数据在传输过程中被窃取或篡改。存储加密:对存储在平台上的数据进行…

kafka 配置自定义序列化方式

序列化 kafka 需要将消息内容序列化&#xff08;Serializer&#xff09;成字节数组才能发送到 Broken节点 消费者需要将字节数组反序列化&#xff08;Deserializer&#xff09;为消息内容&#xff0c;然后消费消息。接口定义如下 public interface Serializer<T> exte…

【百日算法计划】:每日一题,见证成长(013)

题目 回文链表 给你一个单链表的头节点 head &#xff0c;请你判断该链表是否为回文链表。如果是&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 输入&#xff1a;head [1,2,2,1] 输出&#xff1a;true 思路 找到中间节点反转后半部分链表前后链表顺序比…

linux驱动开发-自旋锁

自旋锁自旋锁的特点工作原理适用场景优点缺点API实现注意事项调试和分析最佳实践自旋锁在中断上下文中的使用 使用自旋锁的最佳做法 自旋锁 自旋锁是一种轻量级的锁机制&#xff0c;用于保护共享资源&#xff0c;它是多线程或多核环境中实现并发访问控制的一种方式。 自旋锁通…

TS - tsconfig.json 和 tsconfig.node.json 的关系,如何在TS 中使用 JS 不报错

目录 1&#xff0c;前言2&#xff0c;二者关系2.1&#xff0c;使用 3&#xff0c;遇到的问题3.1&#xff0c;TS 中使用 JS 1&#xff0c;前言 通过 Vite 创建的 Vue3 TS 项目&#xff0c;根目录下会有 tsconfig.json 和 tsconfig.node.json 文件&#xff0c;并且存在引用关系…

leetcode:字符串中的第一个唯一字符

#include <unordered_map> class Solution { public:int firstUniqChar(string s) {unordered_map<char, int> HashMap;string::iterator it s.begin();int i 0;//标记元素下标while (it ! s.end())//初始化哈希表{if (HashMap.count(*it) > 0)//原先hash表中…

第十章 【后端】环境准备(10.10)——Nacos

10.10 Nacos 10.10.1 本地安装 下载 下载地址:https://nacos.io/download/nacos-server/ 解压缩 进入 bin 目录 启动(standalone代表着单机模式运行,非集群模式) ./startup.cmd -m standalone注意:PowerShell 下执行 .\startup.cmd -m standalone 命令

撤回仓库的提交

结论先行 未推送提交&#xff1a;可以使用 git reset --soft HEAD~1 或 git reset --hard HEAD~1 来撤回提交&#xff0c;选择保留或丢弃修改。已推送提交&#xff1a;可以使用 git reset --soft HEAD~1 后&#xff0c;通过 git push --force 强制覆盖远程的提交记录。 问题描…

react 组件通讯

组件通讯 组件是独立且封闭的单元&#xff0c;默认情况下&#xff0c;只能使用组件自己的数据。在组件化过程中&#xff0c;我们将一个完整的功能拆分成多个组件&#xff0c;以更好的完成整个应用的功能。而在这个过程中&#xff0c;多个组件之间不可避免的要共享某些数据。为…

东方博宜 24年9月-A组(萌新)- 巧克力

题目描述 假期快要结束了&#xff0c;小 A 打算好好犒劳一下自己&#xff0c;一路小跑来到超市&#xff0c;看到货架上的各种巧克力&#xff0c;都是自己爱吃的&#xff0c;一口气抓了一堆&#xff0c;有黑巧克力&#xff0c;白巧克力&#xff0c;牛奶巧克力&#xff0c;总共 …

【Java】网络编程:TCP_IP协议详解(IP协议数据报文及如何解决IPv4不够的状况)

&#x1f308;个人主页&#xff1a;努力学编程’ ⛅个人推荐&#xff1a; c语言从初阶到进阶 JavaEE详解 数据结构 ⚡学好数据结构&#xff0c;刷题刻不容缓&#xff1a;点击一起刷题 &#x1f319;心灵鸡汤&#xff1a;总有人要赢&#xff0c;为什么不能是我呢 &#x1f354…

Java 中使用 Redis 的几种方式优缺点对比

一、为什么选择 Redis&#xff1f; 在分析 Java 中使用 Redis 的不同方式之前&#xff0c;我们需要了解为什么 Redis 在分布式应用中如此重要。以下是 Redis 在 Java 项目中常见的应用场景&#xff1a; 缓存&#xff1a;通过将热点数据缓存到 Redis&#xff0c;可以减少数据库…

计算机网络 第三章: 点对点协议

文章目录 点对点协议PPP概述PPP的帧格式PPP桢的透明传输PPP帧的差错检测PPP的工作状态 点对点协议PPP概述 点对点协议&#xff08;Point-to-Point Protocol&#xff0c;PPP&#xff09;是目前使用最广泛的点对点数据链路层协议。 点对点协议PPP是因特网工程任务组&#xff08…

什么是蜘蛛池?有什么作用

在网络爬虫的世界里&#xff0c;蜘蛛池&#xff08;Spider Pool&#xff09;是一个专门用于管理和维护大量爬虫的系统。它为爬虫提供了一个集中的工作环境&#xff0c;使得爬虫能够更高效、更稳定地进行数据抓取。本文将探讨蜘蛛池的概念、组成以及它在现代网络爬虫技术中的作用…

CSU18M91四电极测脂模块开发体脂秤方案

一台体脂秤通过测试体重、体脂、BMI、水分等数据并给出相应提示&#xff0c;并且许多人都将体脂检测数据作为身体健康指数衡量标准&#xff0c;辅助用户来关注身体健康&#xff0c;同时可以通过蓝牙与手机APP应用相连&#xff0c;记录日常身体变化情况&#xff0c;根据变化情况…

黑神话悟空mac可以玩吗

黑神话悟空mac上能不能玩对于苹果玩家来说很重要&#xff0c;那么黑神话悟空mac可以玩吗&#xff1f;目前是玩不了了&#xff0c;没有针对ios系统的版本&#xff0c;只能之后在云平台上找找了&#xff0c;大家可以再观望下看看。 黑神话悟空mac可以玩吗 ‌使用CrossOver‌&…