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)(2x++); //キャストすれば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認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
-
JBUG(Japan Backlog User Group) 記念すべき大阪開催の勉強会1回目に参加しました
JBUGが我らがマイタウン大阪で開催されるとのことで、お久しぶりのTAMさんにお …
-
-
「nakanoshima.dev #36 コンテナについて話したい、助けてほしい人集まれLT大会」に参加しました
アールスリーインスティテュートさんのAshibinaaで開催されました! いつも …
-
-
「Serverless Days Tokyo 2023 Beyond the Server: Creating TiDB for Developer」を見ました
2023/9/23にServerless Days Tokyo 2023に参加し …
-
-
「kintone Café 大阪 Vol.15 〜kintone Night Café 2017 〜」でLTしてきました
「kintone Café 大阪 Vol.15 〜kintone Night C …
-
-
「【第2回】データ分析勉強会(尼崎Pythonの会#1)」に行ってきました
「【第2回】データ分析勉強会(尼崎Pythonの会#1)」に行ってきました。 略 …
-
-
JAWS DAYS 2018の1日前に名古屋にいました「JAWS-UG名古屋 AWS勉強会 JAWS DAYS 2018前夜祭」
仕事の都合でJAWS DAYS 2018の前日は名古屋にいました。 宿泊地はお店 …
-
-
「Serverless Days Tokyo 2023 重厚長大な企業の内製開発組織で成果を出すためのサーバーレスアーキテクチャ」を見ました
2023/9/23にServerless Days Tokyo 2023に参加し …
-
-
LINEとAWSとTwilioとkintoneでBOTを作ってみるハンズオン (2)LambdaからSlackへ通知する2
作る部分 この部分のLambdaを作成します。 手順1でSlackのIncomi …
-
-
「Amazon SageMaker|機械学習エンジニア向けセッション+体験ハンズオン」に行ってきました
残念ながらハンズオンまではいれませんでしたが、前半のSageMakerの解説を聞 …
-
-
実録 JAWS DAYS 2017 ~RoadTrip,スタッフ,ハンズオンメンターで参加しまして~
今年もJAWS DAYSにいってまいりました。 RoadTripの話 去年に引き …
