package android.zhh.com
import android.app.Activity
import android.os.Bundle
import android.util.Log
import java.math.BigInteger
class Main2Activity : Activity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main2)
/**
* 函数的一般写法
*/
// line1(1,2);
/**
* 当line1函数内容只有一行时,上面的函数可以写成这个样子
*/
// line2(1,2);
/**
* 当line1函数内容只有一行时,也可以写成函数表达式的样子
*/
// line3(1,2);
/**
* 默认参数和具名参数
* 默认参数 val pii =3;
* 具名参数 canshu(a2=3);
*/
// canshu(a2=3);
/**
* 异常处理
*/
// testTry();
/**
* 函数的递归调用
* 自己掉自己
*/
testDiGui(10);
}
/**
* 函数的一般写法
*/
fun line1(a1:Int,a2:Int):Int{
return a1+a2;
}
/**
* 当line1函数内容只有一行时,上面的函数可以写成这个样子
*/
fun line2(a1:Int,a2:Int):Int=a1+a2;
/**
* 当line1函数内容只有一行时,也可以写成函数表达式的样子
*/
var line3 ={
a1:Int,a2:Int->a1+a2;
}
/**
* 默认参数和具名参数
* 默认参数 val pii =3;
* 具名参数 canshu(a2=3);
*/
val pii =3;
fun canshu(pi: Int = pii,a2: Int){
var a3 = pi+a2;
Log.e("111","a3>>>"+a3);
}
/**
* 字符创和数字的转化
*/
fun testNum(){
// 如果字符串是"a"这类东西,会类型转换异常
var a1="5";
var a2=5;
// 把字符串转化成数组
var a11 = a1.toInt();
// 把数字转化成字符串
var a22=a2.toString();
}
/**
* 从键盘输入的数据,运算
* 这个要用键盘输入,这里不做测试
*/
fun testKey(){
Log.e("111","第一次输入的数据");
var num1=readLine();//返回值允许是空
Log.e("111","第一次输入的数据");
var num2=readLine();
// !!表示传进来的数据一定不是空
var num11=num1!!.toInt();
var num22=num2!!.toInt();
Log.e("111","${num11+num22}");
}
/**
* 异常处理
*/
fun testTry(){
try {
var a1 :Int = 0;
var a2 :Int =1;
var a3=a2/a1;
}catch (e:Exception){
Log.e("111","程序异常"+e.message);
}
}
/**
* 函数的递归调用
* 自己掉自己
*/
fun testDiGui(num: Int):Int{
if (num==1){
return num;
}
return num*testDiGui(num-1);
}
}
参考视频:
http://yun.itheima.com/course/266.html?1708ku-hda6
源码下载:
http://download.csdn.net/download/zhaihaohao1/10178134
参考文档:http://www.kotlindoc.cn