【Console Application】基本文法 23【学習記】
制御構造とか特殊な演算とかそういう手合の話🤤
Q.
プリミティブ判定はやらないの?
A.
一応 Object にキャストすれば判定自体はできると思うけど…🙄
→限定的だが型指定は "?" のワイルドカードが使え instanceof Map<?,?> だとか instanceof list<?> みたいな書き方が有る模様☺️
#学習記 #Java
#instanceof #ワイルドカード
基準のコードはこちら
【Console Application】基本文法 19【学習記】
https://note.com/sayka/n/n924beb3da425
Java の typeof とか instanceof
さて、それじゃ Java で型判定のとこやろうかな🤤
とりあえず typeof と instanceof を引いてみようかな🤔
Java typeof 演算子
https://www.delftstack.com/ja/howto/java/typeof-in-java/
Javaで型を判断するinstanceof 基本や考え方、応用までズバリ解説!
https://www.bold.ne.jp/engineer-club/java-instanceof
………🤔
Java には typeof は無いっぽい。代わりに getClass なるものが有る様だけど…🤔
getClass とやらも instanceof もプリミティブは判定できない…のかな?🙄
………
↓ null 判定
↓ Object 判定
↓ Object に突っ込む
↓ instanceof
かな?🤪
【 Java 】変数種別判定クラス
ではれっつとらい🤤
乗っけから躓く🤪
なんでもで受けるには Object しか無理😞
まぁ、変な判定挟むより簡単なのかな…
問題は受け側が Object の時にプリミティブを投げられるのか、なのよね🤔
今回の状態だと Object ではない、つまりプリミティブを渡す場面が無いので確認できなそうだけどそのうちプリミティブを投げる試験もやろうかな🤤🚩
して、 Java は別名はどうやるんだろ?🙄
…
…
…
もしかして、 Java にはエイリアス、無い?🙄
まぁいいや🤤
配列は先の記事に書いてあるけど Map はどうなんだろ?🤔
Java 14におけるinstanceofのパターン・マッチング
https://blogs.oracle.com/otnjp/post/pattern-matching-for-instanceof-in-java-14-ja
void processChildNode(Tree tree) {
if (tree.getChildNodes() instanceof Map<?, Node> childNodes
&& childNodes.size() == 1
&& childNodes.get("root") instanceof LetterNode letterNode) {
System.out.println(letterNode.isLatin());
}
}
ん?なんか正体不明のコーディングが載ってるぞ?🤔
「?」って指定してもいいの?🙄
【Java・ジェネリックス】ワイルドカード型とは何か【前半】
https://thekingsmuseum.info/entry/2016/04/02/155821
使い方は限られるけど…ジェネリックと言っているという事はプリミティブも取れるのかな?
まぁ流石に Any 的な引数指定は無理っぽ🤤
Map の判定は大丈夫そう☺️
Java は Map を判定できるので Object は掛からなくていいかな🤤
次回は
compressTypeString() のコード書き換えしたけど enum メソッドに入ってるからそこ入れ替えたら動作確認かな🤤
この記事が気に入ったらサポートをしてみませんか?