下記コードにて、java.Lang.StringIndexOutOfBoundsExceptionが発生しました。
コードの//エラー行と記載したところにて、エラー出力があります。
param="あいうえおか"を引数として渡した場合
paramLength=6となり、
param.substring(paramLength- FIVE, FIVE)は
param.substring(1,5)と同義になるはずですが、
ここでStringIndexOutOfBoundsExceptionが出るのが何故なのか分かりません。
2文字目から数えて、5桁切り取るのですから、
"いうえおか"が返却されると思うのですが、
何故エラーが出るのでしょうか。
java
1 /** 2 * @return 受け取ったparamの末尾五桁を文字列を返却する。 3 * 五桁以下のデータの場合は受け取ったparamをそのまま返却する。 4 */ 5 private static String paramAdjustmentMatsubiFive(String param) { 6 final int FIVE = 5; 7 int paramLength= param.length(); 8 9 if (paramLength<= FIVE) { 10 return param; 11 } else { 12 return param.substring(paramLength- FIVE, FIVE);//エラー行 13 } 14 }
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー