循环语句
直接上代码示例:
fun main(args: Array<String>) {
val list = listOf("a","b","c")
for(a in list){
println(a)
}
for((index,value) in list.withIndex()){
println("$index->$value")
}
for(index2value in list.withIndex()){
println("${index2value.index}->${index2value.value}")
}
val intRange = 1..10
for(b in intRange){
print("$b,")
}
//while 和 do..while演示
var x = 5
while(x > 0){
println(x)
x--
}
do{
println(x)
x--
}while (x > 0)
}
我们也可以模拟自定义一个集合,并且使用循环迭代输出其中的内容:
fun main(args: Array<String>) {
val myList = MyList()
myList.add(1)
myList.add(2)
myList.add(3)
for(i in myList){
println(i)
}
}
class MyIterator(val iterator: Iterator<Int>) {
operator fun next(): Int {
return iterator.next()
}
operator fun hasNext(): Boolean {
return iterator.hasNext()
}
}
class MyList{
private val list = ArrayList<Int>()
fun add(int: Int){
list.add(int)
}
fun remove(int: Int){
list.remove(int)
}
operator fun iterator():MyIterator{
return MyIterator(list.iterator())
}
}
异常捕获
异常的捕获处理跟java很相似,相信你一看就懂,直接上代码举例
fun main(args: Array<String>) {
println("运算结果:${devision(9, 0)}")
}
fun devision(a: Int, b: Int): Double {
return try {
(a / b).toDouble()
} catch (e: ArithmeticException) {
println("运算出错:${e.message}")
0.0
} catch (e: Exception) {
println("运算出错,${e.message}")
0.0
} finally {
println("感谢使用!")
}
}

从上面可以看出try语句也是带有返回值的,返回所执行到的分支语句中的最后一句的执行的结果,如果try语句后面带有finally语句,则执行完finally后再return。
网友评论