文章目录
2021.3.10(一)1.了解Java代码编译执行的过程。
(1)创建java类文件:
(2)要放置在对应包路径中
(3)编译
javac .\MyTest\com\mobile\MyTest.java
(4)创建清单文件,让java环境知道程序的入口
manifest
(5)打包
(6)运行
2.二维数组
3. 运算符
(1)算术运算符
±*/%,++,–
(2)赋值运算符
=,+=,-=,*=,、/=、%=
(3)比较运算符
==、!=、<、>、<=、>=
(4)逻辑运算符
! 、&&、 ||
4.字符串的操作
字符串定义:声明和初始化
字符串操作
(1)如何访问字符串中每一个字符?
(2)字符串的查找
(3)截取子串
(4)字符串替换
2021.3.11(二)1.字符串操作
(5)字符串分隔
(6)字符串去空格
【案例】
activity_main.xml
MainActivity.java
效果:
(7)字符串字面值
如果是类似于转义字符,还想原样输出,使用””””””
(8)模板表达式
2.语句结构
(1)选择结构
效果:
(2)分支结构
when(表达式/语句){
目标值1 -> 执行语句1
目标值2 -> 执行语句2
……
目标值n -> 执行语句n
else{
执行语句
}
}
【案例】输入1表示星期一,输入2表示星期二,类推。
activity_main.xml
MainActivity.kt
效果:
【训练】四季对应不同图片
【案例】点击楼号反馈楼的类型。
activity_main2.xml
MainActivity2.kt
效果:
完整代码:
效果:
【案例】when的简化写法
(3)循环语句
do…while
while
for
【案例】统计10个学生成绩
使用forEach循环语句
【案例】
使用forEachIndexed语句
【案例】
2.区间
(1)正向区间
起点数.rangeTo(终点数)
【案例】
(2)逆向区间
终点数.downTo(起点数)
【案例】
(3)区间并指定step
起点值…终点值
【案例】
3.类型转换
(1)类型判断
判断某某变量的类型是某某类型吗?
【案例】
(2)类型转换
2021.3.17(三)1.类型转换
as?表示如果转换失败,则返回null
2.空值处理
(1)可空类型变量->?
(2)安全调用符->?.
(3)空值默认值->?:
(4)非空断言->!!
断言,是不满足预期,发生异常
3.函数的定义
语法:
fun 函数名称(入参列表):返回类型{
函数体
}
【案例】输入5个数,使用数组保存,进行排序输出。
定义一个函数实现排序
activity_main2.xml
MainActivity2.kt
完整代码:
效果:
2021.3.18 1.函数的类型
(1)无入口参数无返回值
(2)无入口参数有返回值
(3)有入口参数无返回值
(4)有入口参数有返回值
2.单表达式函数
函数内部是一个表达式,也就是函数体只有一句执行语句。
3.函数的参数
(1)具名参数
(2)默认参数
(3)可变参数
注意,也可以向可变参数位置传入数组,但是需要加*
4.函数的分类
(1)顶层函数
创建一个函数可以在类之外,直接在某某包下。
【案例】在当前Activity创建顶层函数
(2)成员函数
(3)局部函数
语法:
fun 函数名(){
fun 函数名(){
}
}
【案例】
2021.3.25 1.(四)局部函数——举例
【案例】
activity_main.xml
MainActivity.kt
效果:
另一种写法:
2.递归函数
在函数内部自己调用自己
【案例】累加求和。
如果调用自身这个函数出现在函数最后一行,该递归函数称为“尾递归函数”,可以节约更多栈空间,效率更高。
3.函数重载
类似java方法重载
MainActivity2.kt
2021.3.28 (五)1.递归函数——举例
【案例】使用递归函数求一组数的最大值
效果:
2.类的创建
成员:字段、方法、构造方法
【案例】
activity_main.xml
MainActivity.kt
效果:
3.构造函数
包括:主构造函数和次构造函数
构造函数的重载,构造函数有多个版本。
【案例】
Student.kt
activity_main.xml
MainActivity.kt
日志:
4.继承
kotlin中对定义的类默认使用final进行修饰,也就是说修饰的类不能够被继承,如果需要继承,需要将父类前添加open关键字。子类继承时使用“:”表示继承。
【案例】
Student.kt
CollegeStudent.kt
activity_main.xml
MainActivity.kt
注意:子类showMsg()执行,父类showMsg()不执行
5.封装
对字段进行封装,添加一些业务逻辑。
【案例】
Book.kt
Cartoon.kt
activity_main.xml
MainActivity.kt
效果:
6.抽象类
是没有实现的类,不能实例化。为子类提供共同的约束。
【案例】
Animal.kt
Dog.kt
Cat.kt
MainActivity.kt
activity_main.xml
效果:
7.接口
关键字interface
也是对实现类的一种约定,不能实例化。接口的子类可以多重继承。
【案例】
IExchange.kt
IUsb.kt
Drive.kt
Phone.kt
MainActivity.kt
效果:
8.嵌套类
写在类的内部,但是该类不能访问外部类的成员。
9.内部类
写在类的内部,该类可以访问外部类的成员。需要添加关键字inner。
【案例】
MainActivity.kt
日志:
10.枚举类
关键字enum,划定一个取值范围,表示某某变量只能取这个范围内的值。
【案例】
Color.kt
MainActivity.kt
日志:
后续还有哦!评论点赞加关注,下次想看不迷路!
么么叽么么叽么么哒!
移动终端开发详解总结(一)(kotlin版)
上文链接
加油!要自己敲代码和练习哦!