我正在研究Java和 我正在研究班级类型的概念
例如, 在Print.java中
public class Print{
public ArrayList<data> list;
public Print(){
list = new ArrayList<data>();
}
public void printIndexList() {
for (data index : list) {
System.out.format("\", index.name)
}
for (String definition : b.def) {
System.out.format("%-6s", definition);
}
}
和data.java
public class data{
public String name
public ArrayList<String> def;
public data(){
def = new ArrayList<String>();
}
}
而且,在main.java
中,
我有字符串类型ArrayList
“defmain”和String
类型“mainname”
我想在列表中添加defmain和mainname,因为我需要在b.java中使用print函数
我试图做的事
在main.java
中,我创建了: -
Print ia = new ptiny();
Array<Print> mainlist = new Array<Print>();
和..试图在a.java
ia.list = mainlist;
然而,它并没有真正起作用。
有没有人知道在Arraylist中添加字符串值和arraylist的方法是什么?
感谢
答案 0 :(得分:1)
请注意,类名应以大写字母开头。以下应该有效:
A ia = new A();
B ib = new B();
ib.def.add("Test");
ia.list.add(ib);
ia.printIndexList();
请注意,我没有分配任何列表。我正在向列表中添加元素。
答案 1 :(得分:0)
据我所知,你试图实现你想做的事情是行不通的。
您无法将a的列表分配给b的列表。
你可以做的是迭代你所拥有的列表:
for (a index : list) {
index.printIndexList();
}
也许这不是你想要的,但很难从你的问题中说出来。
另一种方法是,您可以将所有a中的内容添加到单个a中:
for (a index : list) {
ai.list.addAll(index.list);
}
通常在Java类名称中以大写字母开头,因此a应为A,b应为B
答案 2 :(得分:-1)
我只想弄明白!!谢谢你的帮助
我需要做什么?
我需要创建
Print var = new Print();
var.name = "Herry";
var.defintions = somearraylistin;
ArrayList<Print> ls = new ArrayList<Print>();
ls.add(var);
data.list =is;
data.printIndexList();
感谢
OMG
需要将近3个小时才能搞清楚!!
:)