fun main() {method01("Tom",20)
}//函数默认都是public
//其实kotlin的函数更规范,先有输入,再有输出
private fun method01(name: String, age:Int):Int{println("我的名字是${name},今年年龄是:$age")return 200
}//上面的kt函数,背后会转换成下面的java代码//public static final int method01(String name,Int age){
// String var2="我的名字是"+name+",今年年龄是"+age;
// System.out.println(var2)
// return 200
//}
kotlin可以不用像java一样,固定参数顺序,可以根据自己需求直接指定具体数据:
fun main() {
loginAction(userage = 20, username = "测试", userphone = "1251315131", password = "1111")
}
fun loginAction(username :String, password:String,userage:Int,userphone:String){println("username:$username, password:$password ,userage:$userage ,userphone:$userphone");
}
1.函数名可以写中文
2.避开kotlin里面的关键字
fun main() {//第一种情况`登录功能测试`("test","11111")//第二种情况 //in is在kt里面是关键字,怎么办?使用反引号KtBase19.`in`()KtBase19.`is`()
}private fun `登录功能测试`(name :String,pwd :String){println("用户名是:$name,密码是:$pwd")
}
public class KtBase19 {public static final void in(){System.out.println("in run success");}public static final void is(){System.out.println("in run success");}
}
没有return语句
fun main() {//等同于fun methodAction():String//第一步:函数输入输出的声明// 函数名 输入 输出val methodAction :()->String//第二步:对上面函数的实现methodAction={val valuenumber =9999"$valuenumber test"}//第三步:调用此函数println(methodAction())
}
//
//fun methodAction() :String{
// return "test"
//}
fun main() {//第一步:函数输入输出的声明 第二步:对上面函数的实现val methodAction:(Int,Int,Int)->String={ number1,number2,number3->val numberValue=9999"$numberValue test 参数一:$number1,参数二:$number2,参数三:$number3"}//第三步:调用此函数println(methodAction(1,2,3))}
//private fun methodAction(number1:Int,number2:Int,number3: Int):String{
// val numberValue=9999
// return "$numberValue test 参数一:$number1,参数二:$number2,参数三:$number3"
//}
函数参数只有一个值时 自动帮你写了一个it
fun main() {val methodAction:(String)->String={ "$it" }val methodAction2:(Double)->String={ "$it"}println(methodAction("ddd3d"))println(methodAction2(4505.21))
}
//fun methodAction(it :String) :String{
// return "$it"
//}
fun main() {// 方法名 : 必须指定 参数类型 和返回类型// 方法名 = 类型推断返回类型val method1={ v1:Double,v2:Float,v3:Int ->"v1: $v1,v2: $v2,v3: $v3"}val method2: (Double,Float,Int)->String={ v1,v2,v3->"v1: $v1,v2: $v2,v3: $v3"}println(method1(1.1,0.2f,3))println(method2(1.1,0.2f,3))
}