Java回文

Java palindrome

我在 java 中有初学者问题,因为我不知道我的数组有什么问题,因为我无法对它们进行索引。是的,我知道还有另一种更快的方法来检查回文,但请看看。

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[i],不如使用 normal.get(i).

for (int i=0;i<a.split("").length;i++){
    if (normal.get(i) != modified.get(i)){
        return false;
    }
}

那些不是数组而是 ArrayList
要获取元素 i,您必须执行 normal.get(i)

https://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html https://docs.oracle.com/javase/tutorial/java/nutsandbolts/arrays.html