Java回文
我有一个java初学者的问题,因为我不知道我的数组出了什么问题,因为我无法索引它们。是的,我知道有另一种更快的方法来检查回文,但请看一看Java回文,java,arrays,palindrome,Java,Arrays,Palindrome,我有一个java初学者的问题,因为我不知道我的数组出了什么问题,因为我无法索引它们。是的,我知道有另一种更快的方法来检查回文,但请看一看 public boolean palindrom (String a){ List<String> normal = new ArrayList<String>(); List<String> modified = new ArrayList<String>(); for (String
public boolean palindrom (String a){
List<String> normal = new ArrayList<String>();
List<String> modified = new ArrayList<String>();
for (String x: a.split("")){
normal.add(x);
}
for (String x:new StringBuilder(a).reverse().toString().split("")){
modified.add(x);
}
for (int i=0;i<a.split("").length;i++){
if (normal[i]!=modified[i]){
//in this line above is error as it doesnt recognise "normal" and "modified" arrays
return false;
}
}
return true;
列表的索引方式与数组不同。您将使用normal.geti,而不是使用normal[i]
for (int i=0;i<a.split("").length;i++){
if (normal.get(i) != modified.get(i)){
return false;
}
}
这些不是数组,而是ArrayList
要获得元素i,必须执行normal.geti
你所说的不能索引它们是什么意思?到底是什么问题?正常和修改是列表而不是数组,不能像正常[i]那样引用。您需要执行normal.geti。我得到的错误是表达式的类型必须是数组类型,但它已解析为List。我认为数组没有正确定义。您应该在问题中添加错误信息,这样其他人就不需要在评论中搜索它们。使用该选项。同时防止您的下一个问题:谢谢!好了,谢谢