ArrayList class .add 错误

ArrayList class .add error

我目前正在学习数组,我的 class 网络课程正在教我 ArrayList class。我试图制作自己的数组来尝试一下,但是当我按照网络课程向我展示的格式进行操作时,我收到一个编译器错误,内容为:"no suitable method found for add(java.lang.String)"。同时突出显示“.add”。

import java.util.ArrayList;
public class String
{
    ArrayList <String> myArrayList;
    public void arrayTest()
    {
        ArrayList <String> names = new ArrayList <String> ();

        names.add("John");
        names.add("Smith");
        names.add("Matt");

        System.out.println(myArrayList.get(1));
    }
}

您的 class 隐藏了 java.lang.String,因此用于 add 方法的参数与您的自定义 String class 之间存在类型不匹配。将其重命名为 String

以外的名称

问题可能是您的 class 也被称为 String。我猜你的 ArrayList 的通用类型是那个,而不是 Java String.

您将 class 命名为 String,这会使编译器感到困惑,因为已经存在内置 String.

你能做什么?

  • 将您的 class 重命名为不同的名称:

    public class StringTest
    
  • 或使用完全限定的 class 名称(我不推荐):

    ArrayList <java.lang.String> names = new ArrayList <java.lang.String> ();
    

因为您正在命名 class 字符串,所以

中的字符串
ArrayList < String > names 

指的是您自定义的class类型。因此,只有您定义的 'String' 对象可以添加到 ArrayList,而不是实际的 Java 字符串。要更正此问题,将您的 class 命名为其他名称。