我遇到这个问题,我必须反转出现的字符串的顺序。
我尝试通过创建一个空字符串来反转字符串,然后使用 for 循环添加后面的字符。
但是,它实际上不适用于 null。下面是我尝试过的代码。
public static String reverse (String str){
String reverse= "";
for(int i=str.length()-1; i>=0; i--){
reverse+=str.charAt(i);
}
return reverse;
}
这是测试仪。
String s1=null;
System.out.println (reverse(s1));//null
System.out.println (reverse(""));// empty string
System.out.println (reverse("a"));//a
System.out.println (reverse("abc"));//cba
System.out.println (reverse("atoyota"));// atoyota
System.out.println (reverse("atOyotA"));//AtoyOta
System.out.println (reverse("dad"));//dad
System.out.println (reverse("Dad"));// daD
System.out.println (reverse("DaD"));// DaD
我执行上面的代码得到的错误是
Exception in thread "main" java.lang.NullPointerException
at PalindromeLab_BB.reverse(PalindromeLab_BB.java:62)
at PalindromeLab_BB.main(PalindromeLab_BB.java:5)
任何人都知道出了什么问题,或者如何解决它?
任何帮助将不胜感激 :)。
慕田峪7331174
相关分类