在像“phone”这样的字符串中,我想知道字符“o”的邻居,在这个例子中是“h”和“n”,我尝试了一个字符串迭代器,但是这给了我在charat()之前或之后的结果,我将超出-1的范围,或者是无限循环
String s = textArea.getText();
for( int i = 0; i < s.length(); i++) {
char ch = s.charAt(i);
char tz = s.charAt(i--);
System.out.print(ch);
if(ch == 'n') {
System.out.print(tz);
break;
}
}
3条答案
按热度按时间zd287kbt1#
s.charAt(i--)
在循环中减去一。它会导致无尽的循环。你可以试试s.charAt(i-1)
相反yzckvree2#
试试这个:
这将使下一个和上一个字符脱离特定字符,并将它们放入2个字符的数组中。
0lvr5msh3#
你可以试试这样的。当然,您仍然可以对代码进行更改以获得预期的结果。
在这个版本中,你已经检查了所有的角落案例。你还有问题吗?