当前位置: 首页 > 知识库问答 >
问题:

如何在Java中在同一个列表中添加多个对象类型

苏骏
2023-03-14

我是java新手,正在努力克服它。我有类似(< code>String URL,int Score)的数据,我想在数组列表中实现它。我研究了如何在< code>ArrayList或< code>LinkedList中实现多种类型的变量,发现解决方案是从超类创建子类,我创建了这个子类:

public class MySubClass extends MyList{

public String URL;
public int UrlScore;

public MySubClass (String a, int b){

    URL = a;
    UrlScore = b;
    }
}

我的超级班是:

import java.util.ArrayList;

public class MyList {

public static void main(String[] args) {

    ArrayList <MySubClass> myList_1 = new ArrayList <MySubClass> ();

    myList_1.add("http://www.something.com", 5);

    System.out.println(myList_1);   

    }
}

当我尝试使用添加添加对象时,我遇到了错误?该错误说:

类型ArrayList中的add(int,MySubClass)方法不适用于参数(String,int)

你能告诉我哪里做错了吗?我怎么才能修复它?提前感谢。

共有3个答案

徐翔
2023-03-14
import java.util.ArrayList;

public class MyList {

public static void main(String[] args) {

    ArrayList <MySubClass> myList_1 = new ArrayList <MySubClass> ();
    MySubClass myobj = new MySubClass("http://www.something.com", 5);

    myList_1.add(myobj);



    }
}

尝试类似的东西,代码就会工作。

呼延辰龙
2023-03-14

您应该将< code>MySubClass的实例添加到列表中:

myList.add(new MySubClass("http://www.something.com", 5));

顺便说一句,<code>MySubClass</code>不需要成为<code<MyList>的子类。

如注释中所述,您应该重写 MySubClass 中的 toString() 方法,以便根据需要显示 MySubClass 的每个实例。

一种可能的实现:

public class MySubClass 
{

    public String URL;
    public int UrlScore;

    public MySubClass (String a, int b)
    {
        URL = a;
        UrlScore = b;
    }

    public String toString()
    {
        return URL + "=" + UrlScore;
    }
}
袁河
2023-03-14

您可以通过创建MySubClass的对象并将其添加到列表中来修复它。

MySubClass obj = new MySubClass("http://www.something.com", 5);
myList_1.add(obj);
 类似资料:
  • 每个类都有一些独特的字段。所有最大的功能是:添加,更新,删除,查找,显示列表,保存,加载文件 -所以,首先我将创建一个名为Product的类,它有4个公共字段。以上课程将从产品延伸。 -然后,我想我可能会创建一个ComputerStore类,它有一个字段是items类型ArrayList。items存储所有的对象,这些对象是上述4个类的实例,但我不确定。

  • 在其中声明列表后 并在类PlayListStuff中添加字段

  • 问题内容: 我必须按照下面显示的方式创建一个表。我们可以这样创建吗?(如是) 表名称:样本 其中包含多个值的类别归档。 以及我们如何搜索类别4出现在表格的哪一行。 问题答案: 您无法创建嵌套表。而且您想到的并不是设计这样的桌子的好主意。您应该有两个表(如果是category,则恰好三个 表 包含描述)。一个用于,第二个表保存 每个产品 的 类别 。示例设计如下所示, 和填充样本记录 SQLFidd

  • 对于如何使用Java8Lambdas将对象添加到另一个列表中,我有一个疑问。 让我解释一下: 我有以下对象: 类对象: 学生对象: 主客体: 我想这样做,但使用java 8 lambda: 总的来说:-我想在我的课程列表中找到学生的名字 一旦我找到了学生姓名,我想在科目列表中添加一个新的科目信息

  • 我正在尝试编写一个简单的应用程序,其中包含一个跟踪每个用户支付的款项的表和一个包含每个用户支付的总金额(所有付款的总和)的第二个表。目前,两个表都有相同的字段(firstName、lastName、金额),我已经将它们从同一个Java类映射到多个表,我无法将该类映射到多个表。对此有什么简单的解决方案吗?