2

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

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

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

modString2 = string2.substring(0,3);

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

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

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

4

3 回答 3

1

在您的代码之前放置一个 if 语句,在处理它之前检查字符串的长度。

例如:

if(string1.length() < 3) {
    // Add characters to the string
}
于 2012-09-19T04:00:59.670 回答
1

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

您正在寻找的是所谓的padding

它可以通过多种方式完成。最简单的可能是使用外部库,例如 Apache 的StringUtils。您也可以使用StringBuilder.

有关的:

于 2012-09-19T04:01:30.430 回答
0

像下面这样进行验证并添加字符串。例如。

if(string1.length()<3){     
      String op = 'xx'; 
      string1 += op;
}
于 2012-09-19T04:06:02.560 回答