val greet = when(args[0]) {
"Appul" -> "howdy!"
"Orang" -> "wazzup?"
"Banan" -> "bonjur!"
else -> "hi!"
}
println(args[0] +" greets you: \""+ greet +"\"")
->
是Kotlin语法的一部分(类似于Java的lambda表达式语法),可以在3个上下文中使用:
>
when
将“匹配/条件”部分与“结果/执行”块分开的表达式
val greet = when(args[0]) {
"Apple", "Orange" -> "fruit"
is Number -> "How many?"
else -> "hi!"
}
lambda表达式,它将参数与函数体分离
val lambda = { a:String -> "hi!" }
items.filter { element -> element == "search" }
将参数类型与结果类型分开的函数类型,例如comparator
fun <T> sort(comparator:(T,T) -> Int){
}
关于Kotlin语法的详细信息特别在文档中:
更新/答案:原来IntelliJ12支持Java 8,后者支持lambda,并且正在“折叠”谓词并将其显示为lambda。下面是“未折叠”代码。
问题内容: 在浏览一些代码时,我遇到了箭头运算符,它究竟是做什么的?我以为Java没有箭头运算符。 详细信息:Java 6,Apache Commons Collection,IntelliJ 12 更新/答案:事实证明IntelliJ 12支持Java 8,后者支持lambda,并且正在“折叠”谓词并将其显示为lambda。下面是“展开”代码。 问题答案: 这是将在Java 8中引入的新lamb
问题内容: 在阅读Android通知指南时,我偶然发现了这一点: 增加振动 您可以使用默认振动模式或应用程序定义的振动模式来警告用户。 要使用默认模式,请将“ DEFAULT_VIBRATE”添加到默认字段: 这样做很清楚:它将标志添加到通知对象的默认标志。但是,运算符在Java中做什么?它看起来像一个“ OR”,但是它如何工作? 您可以举一个使用数字的例子吗? 谢谢 问题答案: 是按位或分配运算
问题内容: 我在这里碰到了这个,总是这样使用: 什么是运营商做的,为什么不使用普通的或? 抱歉,如果以前没有回答,搜索引擎将不喜欢标点符号。 问题答案: http://docs.python.org/reference/expressions.html#notin说: [操作员]和是等效的;为了与C保持一致,是首选。[…]拼写被认为是过时的。
问题内容: (插入符)运算符在Java中提供什么功能? 当我尝试这个: …它给我: …所以我猜它不执行幂运算。但是那是什么呢? 问题答案: Java中的运算子 在Java中,“异或”运算符。 让我们举个例子: 这是按位(JLS 15.22.1)和逻辑(JLS 15.22.2)xor的真值表: 更简单地,你也可以将xor视为“ this or that,但不是两者都!”。 Exponentiatio
我有一个具有以下代码的文件: 它在另一个。js文件中也是这样使用的: 有人能解释第一行中的=>系列发生了什么吗?我理解normal(req,res,next)=>{}的意思如下: