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 - 切り出したい文字列の長さ);
というやり方でやっといてね!とのこと。
コメント
コメントを投稿