Javaでの文字列処理時の典型的バグ
文字列を処理しようという時に・・・ 文字列を後ろから抽出したい時は 文字列を処理しようという時に・・・ IndexOutOfBoundsException と StringIndexOutOfBoundsException 、これらの例外に出くわすことが多いので。 メモ程度の内容。 まあ存在しないインデックスを指定するときがほとんど。 例えば以下のコードのように。 class Main { public static void main ( String [ ] args ) { String s = "abc" ; // 以下の例はいずれもStringIndexOutOfBoundsExceptionが発生する s . charAt ( - 1 ) ; s . charAt ( 3 ) ; // 抜き出し位置が存在しないので例外が投げられる s . substring ( 1 , 3 ) ; // そもそもsubstring(開始位置,終了位置)なので対応していない s . substring ( 2 , 1 ) ; } } 文字列を後ろから抽出したい時は String型 . substring ( String型 . length - 切り出したい文字列の長さ ) ; というやり方でやっといてね!とのこと。