if (flipped.charAt(0) = "a" || "e" || "i" || "o" || "u"){ paren = "(" + flipped; String firstpart = paren.substring(0,5); String rest = paren.substring(5); System.out.println(rest+firstpart); }
在这段代码中,我想检查String翻转的第一个字符是否是元音.如果是,我在开头添加一个括号,并将前5个字符移动到字符串的末尾. Eclipse给了我java.lang.NullPointerException并说“赋值的左侧必须是变量”.我该怎么做才能解决这个问题?
使用包含所有这些值的集合.Set<Character> myList = new HashSet<Character>(Arrays.asList('a', 'e', 'i', 'o', 'u')); if(myList.contains(Character.toLowerCase(flipped.charAt(0)))) { // Do work }
这行代码(虽然错误:=将分配,==将进行比较)
if (flipped.charAt(0) == "a" || "e" || "i" || "o" || "u"){
将首先比较flipped.charAt(0)==“a”,它返回一个布尔值.然后它将继续布尔|| “e”|| “我”|| “o”|| “U”.
布尔|| “e”不是有效代码.
精彩评论