Closed9
Kotlin初学者メモ
ピン留めされたアイテム
Kotrinイン・アクションの第1部を読んで、
気になるところをKotlin Playgroundで動かしてメモしたもの。
第2部も読むけど、手を動かすのはそういう案件が来た時にでも。
キーワード:名前付き引数
Kotlin イン・アクション 3.2.1
fun main() {
val a = 10
val b = 20
println(mul(x = a, y = b)) // -> 200
}
fun mul(x: Int, y: Int): Int {
return x * y
}
キーワード:拡張関数, 三項演算子, nullable
Kotlin イン・アクション 3.3
fun String.lastChar(): Char = get(length - 1)
fun main() {
//val str = "abcde"
val str = ""
val lastChar = if (0 < str.length) str.lastChar() else null
println(lastChar) // -> null
}
他の言語にあるような三項演算子はないのかー。
キーワード:可変長引数, vararg演算子
Kotlin イン・アクション 3.4.2
fun main() {
val a = 10
val b = 20
println(sum(a, b, 30)) // -> 60
}
fun sum(vararg args: Int): Int {
return args.sum()
}
こういう書き方は多分しないから、使うことはないかな。
キーワード:分解宣言
Kotlin イン・アクション 3.4.3
fun main() {
val (name, price) = "foo" to 100
println("$name is ${price}yen") // -> foo is 100yen
}
(ほとんどPerlじゃん!)
キーワード:トリプルクオート文字列
Kotlin イン・アクション 3.5.2
fun main() {
val str = """¥ is yen mark!"""
println(str) // -> ¥ is yen mark!
}
便利!
キーワード:プライマリコンストラクタ
Kotlin イン・アクション 4.2
class Person(val name: String)
fun main() {
val foo = Person(name = "foo")
println(foo.name) // -> foo
}
こうやってメンバーを定義した場合のアクセス修飾子はどうなるのか気になってたけど、こうなってたのね。
キーワード:object
Kotlin イン・アクション 4.4
object Person {
val name = "foo"
}
fun main() {
println(Person.name) // -> foo
}
この辺は、必要になって改めて学ばないと難しいなー。
キーワード:Unit型
Kotlin イン・アクション 6.2.5
なんだこれ?って思ったけど、
もし見かけたらSwiftで言うところのVoid
だと思えばコードは読めそう。
このスクラップは2024/05/07にクローズされました