Kotlin 的基本资料型态与 Java 相同,包括:Byte、Short、Int、Long、Float、Double、Char、String、Boolean,但在 Kotlin 它们都是大写字母开头。
在宣告时,会用到「var」与「val」的关键字,前者是用在可以改变值的变数,後者则是常数。
// Kotlin 的资料型态放在变数名称後面,并用冒号隔开,最前面则定义变数或常数。
val id: String = "100"
var name: String = "Piyan"
var age: Int = 23
var isActive: Boolean = true
// 若宣告时就给予初始值,资料型态可以省略不写,Kotlin 会自动定义型态。
// 若要宣告 Long,需在数值後方加上 L 或 l 字眼。
// 若初始值给予的是浮点数,型态为 Double。
// 若要宣告 Float,需在数值後方加上 F 或 f。
val id = "100"
var name = "Piyan"
var age = 23
var isActive = true
activity_main:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="evan.chen.app.mvp_pattern.LoginActivity">
<TextView
android:id="@+id/tv1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center" />
<TextView
android:id="@+id/tv2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center" />
</LinearLayout>
MainActivity:
class MainActivity : AppCompatActivity() {
// 将tv2提昇为类别的属性,也就是在 MainActivity 内的第一层中定义属性
// 利用 Kotlin 的 lateinit 语法定义一个之後才会初始化的属性
lateinit var tv2: TextView
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
// tv1 是在 onCreate 方法中宣告的区域变数,在 onCreate 外是无法被存取的
val tv1: TextView = findViewById<TextView>(R.id.tv1)
// 然後从 onCreate 方法中再取得元件
tv2 = findViewById(R.id.tv2)
}
}
谢谢大家愿意花时间阅读,小弟弟我在此鞠躬
Jade 汇入外部 JSON 资料内容 这里我们先自行新增2份 jaon档 **menu.json*...
IDEF (ICAM DEFinition method) 代表的是一整套的概念建模方法,总共有 I...
由於不同的字用不同的样式,所以需要用到html来设定: //add take buttons wit...
今日早上助教讲了一篇论文,主要是应用Yolo做图片辨识,下午则是各组别报告与该组专题相关的论文,及目...
-服务组织控制(SOC) 服务组织控制(Service Organization Control ...