見出し画像

【Console Application】基本文法 28【学習記】

制御構造if,switch,tryとか特殊な演算三項演算子,ビット,論理,算術関数とかそういう手合の話🤤

Q.
今度は Java と Kotlin はいっぺんにやったんだ?
A.
Swift の .a が嫌がらせ過ぎただけ!🤪

→ Java は Optional 型が実装されているも エルビスnull結合演算子は実装されてない
→ Kotlin の null 安全 "?." も Swift と同じく使い所に注意が要る
→ Kotlin は最後に書いた式が評価されるので if の実行文に値を置くと三項演算子の様な挙動をする
 → AE のエクスプレッションみたいな感じある🤤
 →昔 JS で最後に 0 とか void とかだけ書いて終わってるコードが有って使い方が似てる

#学習記 #Java #Kotlin
#三項演算子 #エルビス演算子

基準の JS コードはこちら

【Console Application】基本文法 27【学習記】
https://note.com/sayka/n/n19363bb3208d


【 Java 】三項演算子と null

Java 編開始よー🤪
まず readline の空入力文字数の確認から🤤

画像1

画像2

Java の readline は改行を含めないっぽい🤔

画像3

ええと… Java のエルビスnull結合演算子は…

Javaのnull合体演算子
https://qiita.com/130cmWolf/items/6f1741ab19ebc9479ceb

_人人人人人人人人_
> Javaにそんな <
> ものは無い!! <
 ̄Y^Y^Y^Y^Y^Y^Y^ ̄

画像4

画像5

🙄🙄🙄❓❓❓❓❓

………🤔

………🙄

………🤪

画像6

画像7

プログラムエラーの大半は(略


【 Kotlin 】三項演算子と null

Kotlin にも手をつけようかね🤤
本来ならこんな感じでサクサク進んで1回で終わらすつもりだったのにねぇ…🙄

画像8

で、開くと相変わらず Unresolved reference のままの import とカスタム readline 関数…😞
折角だし、またちょっと調べようかな…(無限回廊)

まぁ出てくるワケないか…前回何日調べたと思ってるのよねぇ🤪

画像9

気を取り直して readline 空文字の length 見ようと思ったら「 null 安全やってないよ」って言われた🙄

画像10

画像11

Kotlin の readline も空文字は 0
まぁそこは Java と一緒じゃないと困る🤤

画像12

Kotlinには三項演算子(条件演算子)がない
https://qiita.com/oxsoft/items/23bf151fcb87d822cb84

おっとそうだ、 Kotlin は三項演算子無いんだっけ😞

画像13

[Kotlin] 標準入力の値をチェックする – 数値をどう扱うのか?
https://pouhon.net/post-1219/1219/
これでもまだ頑なにKotlinはコンパイルエラーを返します。
この?.演算子では変数inputがnullである可能性が捨てきれず、それによって今度は計算式が通らなくなるからです。

はいはい、 Swift の時と一緒ね😞

画像14

画像15

switch の時もそうだったけど三項演算子くらいは糖衣構文実装しといてよって感じしなくもない…😞


次回は

久々にやった事の纏めかな🤤

この記事が気に入ったらサポートをしてみませんか?