JAVA里面定义了一个arraylist 加了值后,怎么在另一个类中调用加了值后的list
- 提问者网友:疯孩纸
- 2021-03-19 07:28
- 五星知识达人网友:洎扰庸人
- 2021-03-19 08:24
在调用getList() 方法之前先调用jia()方法,这是最简单的解决办法。
奇葩一点就把加值代码放到public ArrayList
如果已经学了构造方法就最好了。不过我记得我学到构造方法后建你这样的类构造方法代码都自动生成了,直接填充方法类容就ok了,所以我估计没还没学到追问
我尝试吧加直接写在方法外面,但是一直报错不知道怎么改。
追答这是编译错误。
最简单的吧,不用改你之前的代码。
你把jia()方法在getList()方法的第一排调用,这样你调用getList()的时候等于也调用了加值方法
- 1楼网友:渊鱼
- 2021-03-19 11:57
亲,你的问题出在,你在获取之前,你是没有给你的list加值啊,虽然你提供了加值的方法,但是你没有调用啊。
你可以添加一个构造方法
public fangfa(){jia();
}
这样就可以。
还有一种方法就是在调用getList()之前调用一次jia();方法试试就会有值了哈。
希望可以帮助到你,望采纳,谢谢!
- 2楼网友:詩光轨車
- 2021-03-19 10:31
import java.util.ArrayList;
import java.util.List;
public class Fangfa {
static ArrayList
public void jia() {
BOOK b1 = new BOOK("1", "三国", "25");
BOOK b2 = new BOOK("2", "水浒", "26");
BOOK b3 = new BOOK("3", "西游", "27");
BOOK b4 = new BOOK("4", "红楼", "30");
list.add(b1);
list.add(b2);
list.add(b3);
list.add(b4);
}
public ArrayList
return list;
}
public void setList(ArrayList
this.list = list;
}
}
class BOOK {
private String id;
private String name;
private String no;
public BOOK(String id, String name, String no) {
this.id = id;
this.name = name;
this.no = no;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getNo() {
return no;
}
public void setNo(String no) {
this.no = no;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
}
class Test{
public static void main(String args[]){
Fangfa ff = new Fangfa();
ff.jia();//先添加值
List
for (BOOK book: list){
System.out.println("book.getId()="+book.getId()+" |book.getName()="+book.getName()+" |book.getNo()="+book.getNo());
}
}
}
- 3楼网友:詩光轨車
- 2021-03-19 09:39