字符串索引超出范围异常

时间:2012-09-19 03:56:39

标签: java string exception

我正在寻找帮助纠正“字符串索引超出范围”的异常错误。我的代码应该从用户输入两个字符串作为输入(string1和string2)并创建作为原始部分的新字符串。

到目前为止,我有以下内容:

modString1 = string1.substring(string1.length() -3, string1.length());

modString2 = string2.substring(0,3);

上面的代码应该取string1的最后3个字符和string2的前3个字符。当用户输入一个短于3个字符的字符串时,我遇到了问题。

我想知道是否有办法检查输入并添加一个字符(例如x)如果字符串太短?

例如,如果用户为第一个字符串输入“A”,它会将字符串更改为“xxA”,如果为第二个字符串输入“A”,则会将其更改为“Axx”?

3 个答案:

答案 0 :(得分:1)

在代码之前加上if语句,在处理之前检查字符串的长度。

例如:

if(string1.length() < 3) {
    // Add characters to the string
}

答案 1 :(得分:1)

  

我想知道是否有办法检查输入并添加一个字符(例如x)如果字符串太短?

您要找的是填充

可以通过多种方式完成。最简单的可能是使用外部库,例如Apache的StringUtils。您也可以使用StringBuilder自己编写填充方法。

相关:

答案 2 :(得分:0)

如下所示进行验证并添加字符串。 对于前。

if(string1.length()<3){     
      String op = 'xx'; 
      string1 += op;
}