ヤマムギ

growing hard days.

*

Java SE 7 Silver対策勉強をしながらメモ 2015/1/31

      2015/03/29

本日は演算子。
休日出勤が土日と続きますがこういう時ほど続ける!

いつものごとくマークダウンで記載したのでそのままJetpack Markdownにお任せでアップします。
コードシンタックスのCSSがとんだりとばなかったりで他のプラグインと競合してるのですかね。
まあ、またそのうち見ます。

キャスト

  • 計算結果はintなので明示的にキャストせずにbyteに代入しようとするとコンパイルエラー

[java]
byte x = 3;
byte y = 2x++; // コンパイルエラー
byte y = (byte)(2
x++); //キャストすればOK
[/java]

boolean

  • booleanの代入は代入した値を結果として返す。

[java]
boolean x = false;
if(x = true){ //xにtrueが代入される。
//結果はtrueとなってここが実行される。
}
if(x = false){ //xにfalseが代入される。

}else{
//結果はfalseとなってここが実行される。
}
[/java]

switch

  • 評価式でも範囲を超えてはいけない。

[java]
byte b = 100;
switch(b){
case 100: //ほにゃらら
case 128: //ここが原因でコンパイルエラー(byteは127まで)
default: //ほにゃらら
}
[/java]

  • switchで使えるデータ型は、byte,char,int,enum,Stringのみ

  • 最初に一致したcaseの後は、次のcaseに指定された定数が何であろうが、breakか終わりまでは全て実行される

  • 同一のcase文を使用するとコンパイルエラー

String

  • String型のメソッドは変数そのものを変形しない(StringBulderに混乱されない!!)

Stringと比較演算子

  • == は同一オブジェクトを参照しているかの比較!何度もひっかからない!!

[java]
“Java” == “Java” //true
“Java.equals(new String(Java))” //true
“Java” == (new StringBuilder(“Java”).toString()) //false
[/java]

インクリメント演算子

  • ()で囲っても後置きインクリメント演算子は優先実行されない。

[java]
int j=0;
int l=0;
int i = j++;
int k = (l++);
// iもkも結果は0
[/java]

関係演算子と論理演算子

  • 関係演算子の方が優先度が高い

[java]
int i = 10;
int j = 20;
int k = 20;
if ((i < j) && (i > k) || (j == k){
// (true) && (false) || (true) = true
//左から順に判定していく。
//(true) && (false) はfalseだが、false || true で最終的にtrueとなる。
}
if (i < j && i > k || j == k){
// true && false || true = true
//関係演算子の方が優先度が高く、trueかfalseかの判定がされる
}
if ((i < j) && ((i > k) || (j == k)){
// (true) && ((false) || (true)) = true
//()で括られた右側が先に判定される。
//((false) || (true)) はtrueで、true && true なのでtrueとなる。
}
[/java]

breakはループ文かswitchでしか書いちゃだめ!

  • さすがにコンパイルエラー

最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - Java, study , ,

  関連記事

Linux Mint 17 MATE 64bit にJDKを入れなおしてEclipseをインストールする

Linux Mint 17のJDKを入れなおす ソフトウェア・パッケージを最新に …

ゴールデンウィーク10日連続デモ解説勉強会にチャレンジします

これまでに執筆した書籍の関連デモを解説する30分の勉強会を4/29~5/8の10 …

「JBUG広島#7 × Agile Japan」に参加しました

JBUG広島さんとAgile Japanさんの合同勉強会に参加しました。 きっと …

家族目線(HVC-C2W)SDKサンプルコードを実行してみました(iOS編)

オムロンさんの家族目線(HVC-C2W)SDKサンプルコードを実行してみました。 …

交通情報系スキルを事例に見る日常生活に溶け込むスキルのテクニック(Alexa Day 2019でのブログ)

以下は、気になったことのメモとか感想を書いています。 登壇者、発表者、主催企業な …

Developers Summit 2018 「もしSIerのエンジニアがSRE本を読んだら」を聞きました

以下は、思ったことや気になったことをメモしていますので、必ずしも登壇者の発表内容 …

LINEとAWSとTwilioとkintoneでBOTを作ってみるハンズオン (5) LINEからの投稿へ返信と登録処理

作る部分 LINEからのメッセージを受けて各APIより返信し、StepFunct …

Media-JAWS【第8回】「AWS人材教育について語る!」に参加しました。

Media-JAWS【第8回】「AWS人材教育について語る!」に参加しました。 …

「JAWS DAYSに行きたくても行けなかった人に捧ぐ!AWSユーザーが教えてくれるAWSにまつわる最新事情」で運営と発表をしました

JAWS DAYS 2017のre:Capを大阪で開催しました。 JAWS DA …

「関ジャバ Java開発のためのDocker & てらださんせきらら in MS関西」に行ってきました

「関ジャバ Java開発のためのDocker & てらださんせきらら i …