我正在尝试编写一个简单的程序来反转字符串最后两个字符的顺序。 (如果少于 2 个字符,我将按原样打印字符串)
这是我的代码,
if(text.length() == 1)
System.out.println(text);
else if(text.length() == 2)
System.out.println(text.substring(1) + text.substring(0,1));
else
System.out.println(text.substring(-2) + text.substring(-2,-1) + text.substring(-1));
当我尝试运行输入超过三个字符的程序时,出现运行时错误。
java.lang.StringIndexOutOfBoundsException:字符串索引超出范围:-2
我以前遇到过这个问题,但我通常只是围绕它编写异常代码。不过,我认为是时候找出如何彻底消除这个问题的方法了。
非常感谢任何帮助。 谢谢。
最佳答案
试试这个,
String str="Testing";
int len=str.length();
String rev = str.substring(0,len-2)+str.charAt(len-1)+str.charAt(len-2);
System.out.println(rev);
关于java - 字符串和运行时错误。 (颠倒字符串中字符顺序的程序),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22575843/