最近、C#やPowerShell、JavaScirptでしかコードを書けていないため、新たな刺激を求めてKotlinを少し勉強しました。その中から私がこの機能便利だなと思ったものを抜粋して共有したいと思います
そもそもKotlinって何?
KotlinはJavaと互換性のある言語で、GoogleにAndroid開発言語としても認められています
KotlinとJavaのよくサイトなどでみる違いがNullの扱いです。その他にもいくつかありますが、詳しくは以下のサイトが参考になるかと思います
Kotlin | Java | |
Nullの扱い | 基本NG(書き方によっては許容する) | 許容する |
開発会社 | JetBrains社 | Oracle社 |
-
【超入門】Kotlinとは?Kotlinの特徴やJavaとの違いなどを解説 | ことすた
この記事では、Kotlinの特徴やJavaとの違い、Kotlinでできることや開発されたアプリを紹介していきます。Jav ...
続きを読む
範囲演算子
意外と使い道の多い範囲判定です。「..」と記載するとX~Xの間という挙動となります
以下は100~200の範囲と1~99の範囲であるかの判定をしています
val num = 100
println(num in 100..200) // true
println(num in 1..99) // false
if文(when文)
when文とは他の言語いうところのswitch文となります。これは他の言語でもぜひともできるようになってほしい機能です。それはif文(when文)の結果をそのまま変数に代入できることです
//if文の場合
val num = 100
var msg = if(num <= 50) {
"numは50以下です"
} else if (num <= 100) {
"numは100以下です"
} else {
"numは100より大きいです"
}
println(msg) // numは100以下です
// when文の場合
val score = 20
var msg = when (score) {
100,99 -> "素晴らしい" // 複数の値
in 60..98 -> "合格です" // 範囲を指定
!in 60..100 -> "不合格です" // 指定範囲にない
else -> "不正な点数です"
}
println(msg) // 不合格です
ラベル構文
二重forループでbreakする際にboolを用意して二重ループを抜け出すといったことをしていますが、子の構文を使用すれば簡単に抜けられます
// outer@や@outerがラベル構文
outer@ for(i in 1..3) {
for(k in 1..3) {
if(i * k > 3) break@outer
print("${i * k}")
}
println()
}
// 以下の出力がされる
// 1 2 3
// 2
上記の二重for文以外にもラベル構文は他にも色々使い方があるようです
会社紹介
私が所属しているアドバンスド・ソリューション株式会社(以下、ADS)は一緒に働く仲間を募集しています
会社概要
「技術」×「知恵」=顧客課題の解決・新しい価値の創造
この方程式の実現はADSが大切にしている考えで、技術を磨き続けるgeekさと、顧客を思うloveがあってこそ実現できる世界観だと思っています
この『love & geek』の精神さえあれば、得意不得意はno problem!
技術はピカイチだけど顧客折衝はちょっと苦手。OKです。技術はまだ未熟だけど顧客と知恵を出し合って要件定義するのは大好き。OKです
凸凹な社員の集まり、色んなカラーや柄の個性が集まっているからこそ、常に新しいソリューションが生まれています
ミッション
私たちは、テクノロジーを活用し、業務や事業の生産性向上と企業進化を支援します
-
アドバンスド・ソリューション株式会社
アドバンスド・ソリューションは主にMicrosoft製品を使用して、企業の生産性向上に取り組んでいます。要件定義から導入 ...
サイトへ移動
-
お問い合わせ | アドバンスド・ソリューション株式会社
お問い合わせはこちら