本文内容是我在学习kotlin语法的过程中学习和总结的一点小知识,很入门,初级水平,大佬请忽略。
如有错误敬请指正,不胜感激
16、判断器
java
int count = 1;
switch (count) {
case 0:
System.out.println(count);
break;
case 1:
case 2:
System.out.println(count);
break;
default:
System.out.println(count);
break;
}
kotlin
var count = 1
when (count) {
0 -> {
println(count)
}
in 1..2 -> {
println(count)
}
else -> {
println(count)
}
}
17、匿名内部类
java
new Callback() {
@Override
public void onSuccess() {
}
};
kotlin
object:Callback {
override fun onSuccess() {
}
}
18、内部类
java
public class MainActivity extends AppCompatActivity {
public class MyTask {
}
}
kotlin
class MainActivity : AppCompatActivity() {
inner class MyTask {
}
}
19、内部类访问同名变量
java
public class MainActivity extends AppCompatActivity {
String msg= "菜鸡";
public class MyTask {
String msg= "小菜鸡";
public void message() {
System.out.println(msg+ "---" + MainActivity.this.msg);
}
}
}
kotlin
class MainActivity : AppCompatActivity() {
var msg= "菜鸡"
inner class MyTask {
var msg= "小菜鸡"
fun show() {
println("$msg---${[email protected]}")
}
}
}
20、默认参数
java
public void toast(String text) {
toast(this, text, Toast.LENGTH_SHORT);
}
public void toast(Context context, String text) {
toast(context, text, Toast.LENGTH_SHORT);
}
public void toast(Context context, String text, int time) {
Toast.makeText(context, text, time).show();
}
toast("提示信息");
toast(this, "提示信息");
toast(this, "提示信息", Toast.LENGTH_LONG);
kotlin
fun toast(context : Context = this, text: String, time: Int = Toast.LENGTH_SHORT) {
Toast.makeText(context, text, time).show()
}
toast(text = "提示信息")
toast(this, "提示信息")
toast(this, "提示信息", Toast.LENGTH_LONG)
21、数组
java
int[] array1 = {1, 2, 3};
String[] array3 = {"1", "2", "3"};
kotlin
val array1 = intArrayOf(1, 2, 3)
val array3 = arrayListOf("1", "2", "3")
22、循环
java
//普通for循环
String[] array = {"1", "2", "3"};
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]);
}
//高级for循环
String[] array = {"1", "2", "3"};
for (String text : array) {
System.out.println(text);
}
kotlin
//普通
val array = arrayListOf("1", "2", "3")
for (i in 1 until array.size) {
println(array[i])
}
//高级
val array = arrayListOf("1", "2", "3")
for (text in array) {
println(text)
}