Java 如何在同一列表中添加多个对象类型
How to add multiple objects types in the same list in Java
我是 java 的新手并尝试克服它。我有像 (String URL, int Score
) 这样的数据,我想在数组列表中实现它。我搜索了如何在 ArrayList
或 LinkedList
中实现多种类型的变量,发现解决方案是从 super class 创建 sub class 并且我创建了这个 sub class:
public class MySubClass extends MyList{
public String URL;
public int UrlScore;
public MySubClass (String a, int b){
URL = a;
UrlScore = b;
}
}
我的超级 class 是:
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);
}
}
我尝试使用添加 Add
对象时出现错误?错误说:
The method add(int, MySubClass) in the type ArrayList is not applicable for the arguments (String, int)
你能告诉我哪里做错了吗?我该如何修复它?提前致谢。
您应该将 MySubClass
的实例添加到列表中:
myList.add(new MySubClass("http://www.something.com", 5));
顺便说一句,MySubClass
没有必要成为 MyList
的子 class。
如评论中所述,您应该覆盖 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;
}
}
您可以通过创建 MySubClass 对象并将其添加到列表中来修复它,例如
MySubClass obj = new MySubClass("http://www.something.com", 5);
myList_1.add(obj);
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);
}
}
尝试类似的操作,代码将起作用。
我是 java 的新手并尝试克服它。我有像 (String URL, int Score
) 这样的数据,我想在数组列表中实现它。我搜索了如何在 ArrayList
或 LinkedList
中实现多种类型的变量,发现解决方案是从 super class 创建 sub class 并且我创建了这个 sub class:
public class MySubClass extends MyList{
public String URL;
public int UrlScore;
public MySubClass (String a, int b){
URL = a;
UrlScore = b;
}
}
我的超级 class 是:
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);
}
}
我尝试使用添加 Add
对象时出现错误?错误说:
The method add(int, MySubClass) in the type ArrayList is not applicable for the arguments (String, int)
你能告诉我哪里做错了吗?我该如何修复它?提前致谢。
您应该将 MySubClass
的实例添加到列表中:
myList.add(new MySubClass("http://www.something.com", 5));
顺便说一句,MySubClass
没有必要成为 MyList
的子 class。
如评论中所述,您应该覆盖 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;
}
}
您可以通过创建 MySubClass 对象并将其添加到列表中来修复它,例如
MySubClass obj = new MySubClass("http://www.something.com", 5);
myList_1.add(obj);
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);
}
}
尝试类似的操作,代码将起作用。