当前位置:网站首页>Android 开发用 Kotlin 编程语言一 基本数据类型
Android 开发用 Kotlin 编程语言一 基本数据类型
2022-08-05 10:52:00 【AaVictory.】
一、简介
Kotlin: 是世界各地的 Android 开发者广泛使用的一种编程语言
二、变量声明
1、Kotlin 使用两个不同的关键字
- val :用于值从不更改的变量。使用 val 声明的变量无法重新赋值。
- var :用于值可以更改的变量。
2、举例说明
//num是一个 Int 类型的变量,初始赋值为 10
var num: Int = 10
//可以将 num的值从 10 更改为 15
num=15
Int 是一种表示整数的类型,是可以用 Kotlin 表示的众多数值类型之一。与其他语言类似,您还可以使用 Byte、Short、Long、Float 和 Double,具体取决于您的数值数据。
- 假设有一个名为 name 的 String。如果希望确保 name的值始终为“Kotlin”,则可以使用 val 关键字声明 name:
val name: String = "Kotlin"
通过这些关键字,您可以明确指出哪些变量的值可以更改。请根据需要加以利用。如果引用的变量必须可重新赋值,则将其声明为 var。否则,请使用 val。
三、类型推断
val name= "Kotlin"
由于 “Kotlin” 的值为 String 类型,因此编译器推断 name 也为 String。请注意,Kotlin 是一种静态类型的语言。这意味着,类型将在编译时解析且从不改变。
利用 Kotlin 的类型推断,既能确保代码简洁,又能确保类型安全
四、Null 安全
在某些语言中,可以声明引用类型变量而不明确提供初始值。在这类情况下,变量通常包含 null 值。默认情况下,Kotlin 变量不能持有 null 值。这意味着以下代码段无效:
val name:String= null
- 要使变量持有 null 值,它必须是可为 null 类型。可以在变量类型后面加上 ? 后缀,将变量指定为可为 null,如以下示例所示:
val name:String? = null
- 指定 String? 类型后,可以为 name 赋予 String 值或 null。
必须小心处理可为 null 的变量,否则可能会出现可怕的 NullPointerException。例如,在 Java 中,如果尝试对 null 值调用方法,程序会发生崩溃。
边栏推荐
- Custom filters and interceptors implement ThreadLocal thread closure
- Image segmentation model - a combination of segmentation_models_pytorch and albumations to achieve multi-category segmentation
- FPGA: Basic Getting Started Button Controlling LED Lights
- GCC编译的时候头文件搜索规则
- Guys, I am a novice. I use flinksql to write a simple count of user visits according to the document, but it ends after executing it once.
- SkiaSharp 之 WPF 自绘 投篮小游戏(案例版)
- Chapter 5: Multithreaded Communication—wait and notify
- Opencv图像缩放和平移
- 《分布式云最佳实践》分论坛,8 月 11 日深圳见
- Nature:猪死亡1小时后,器官再次运转
猜你喜欢

5G NR 系统消息

Data Middle Office Construction (10): Data Security Management

阿里全新推出:微服务突击手册,把所有操作都写出来了PDF

Getting started with Polkadot parachain development, this article is enough

FPGA:开发环境Vivado的使用

负载均衡应用场景

PostgreSQL 2022 Report: Rising popularity, open source, reliability and scaling key

PCB布局必知必会:教你正确地布设运算放大器的电路板

【深度学习】mmclassification mmcls 实战多标签分类任务教程,分类任务

反射修改jsessionid实现Session共享
随机推荐
A small test of basic grammar, Go lang1.18 introductory refining tutorial, from Bai Ding to Hongru, basic grammar of go lang and the use of variables EP02
电气工程的标准是什么
Leetcode刷题——623. 在二叉树中增加一行
High-quality DeFi application building guide to help developers enjoy DeFi Summer
使用Windbg过程中两个使用细节分享
Oracle的自动段空间管理怎么关闭?
gradle尚硅谷笔记
HDD杭州站•ArkUI让开发更灵活
uniapp中的view高度设置100%
反射修改jsessionid实现Session共享
ECCV 2022 | 视听分割:全新任务,助力视听场景像素级精细化理解
第四章:redis 数组结构的set和一些通用命令「建议收藏」
如何测试一下现场的备机失败,转发主机的场景?
【OpenCV】-仿射变换
trie树模板
L2-042 老板的作息表
第九章:activit内置用户组设计与组任务分配和IdentityService接口的使用
[Strong Net Cup 2022] WP-UM
第八章:activiti多用户任务分配
API 网关简述