weblog

技術的なメモ置き場。

【Java】try-catch-finally文

try-catch-finally文の順序は変えられない。

// OK
try {} catch(Exception e) {} finally{}
// NG
try {} finally{} catch(Exception e) {}
// NG
try {} finally {} finally {}

catchブロックとfinallyブロックにreturnがあった場合どうなるか?

try {
    // omit...
} catch (Exception e) {
    return 1;
} finally {
    return 2;
}

この場合、2が返る。

【Java】for文

for文は、初期化文・条件文・更新文・繰り返し処理で構成される。

for (初期化文; 条件文; 更新文) {
    繰り返し処理;
}

初期化文と更新文は複数記述できる。 初期化文で宣言できるのは同じ型の変数。

for (int i = 0, j = 0; true; i++, j++) {}

// 更新文でメソッドの実行も可能
for (int i = 0, j = 0; true; hoge()) {} 

// NG 初期化文で型が異なる変数は宣言できない
for (int i = 0, long j = 0L; true; i++, j++) {}

for文の動作順

  1. 初期化文の実行
  2. 条件文の判定
  3. 繰り返し処理の実行
  4. 更新文の実行
  5. 2に戻る

【Java】識別子

Javaの識別子(変数、メソッド名、クラス名など)には、以下の規則がある。

  • 予約語は使用不可
  • 数字から始められない
  • 下記の記号以外の記号は使用不可
    • アンダースコア
    • 通貨記号

通貨記号を使ってみると以下のようになる

int ¤ = 1; // 国際通貨記号
int ฿ = 2; // タイバーツ
int ¢ = 3; // セント
int € = 4; // ユーロ
int ₲ = 5; // パラグアイ・グアラニー
int ₺ = 6; // トルコリラ
int £ = 7; // ポンド
int ₩ = 8; // ウォン
int ¥ = 9; // 円

System.out.println(¤ + ฿ + ¢ + € + ₲ + ₺ + £ + ₩ + ¥); // 45