欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

java 链表 传递_java 链表 传递过程中的问题

发布时间:2025/5/22 编程问答 38 豆豆
生活随笔 收集整理的这篇文章主要介绍了 java 链表 传递_java 链表 传递过程中的问题 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

具体情况如下一共有三个类,分别是主类main,从TXT文件中读取入链表的类read,还有一个是对链表内容进行查询的类inquiryread读取并没有问题,read中有加入检测M.List.add(A);M.List.g...

具体情况如下

一共有三个类,分别是主类main,从TXT文件中读取入链表的类read,还有一个是对链表内容进行查询的类inquiry

read读取并没有问题,read中有加入检测

M.List.add(A);

M.List.get(i).getInformation();

能够显示链表中的信息(M是对主类创建的对象,i是一个计数变量)

链表定义如下是在主类中定义的

public List List = new ArrayList();

但是到了inquiry类中的时候

System.out.println("测试链表数据"+M.List.get(i).getInformation());

System.out.println("链表大小:"+M.List.size());

循环3次,显示出来的数据都是一样的,并且都是read中最后读取的数据。

而主类中的链表定义不加上static修饰,read中读取正常之后,无论是主类还是查询类中,链表大小都为0。个人猜测是因为主类链表不是传引用,所以read中修改,其它地方还是一样。

由于是java新手一个,所以不清楚原因以及解决方法,求助,谢谢。

PS:程序能运行,只是加上static之后,会在M.这个地方出现警告。

public void ReadFromFile() {

int i = 0;

int FileName = 1;

File filePath = new File("H:\\"+ FileName + ".txt");

BufferedReader br;

String s = null;

AirLineInformation A = new AirLineInformation();

br = new BufferedReader(new FileReader(filePath));

while ((s = br.readLine()) != null)

{

String s_split[] = s.split(" ");

A.terminal = s_split[0];

A.lineID = s_split[1];

A.planeID = s_split[2];

A.week = s_split[3];

A.date = s_split[4];

A.passengerNumber = Integer.parseInt(s_split[5]);

A.ticketLeft = Integer.parseInt(s_split[6]);

A.fileID = Integer.parseInt(s_split[7]);

AirLineList.add(A);

AirLineList.get(i).getInformation();

i++;

}

} }

调试发现是读取的时候就有问题,读入第二组数据的时候,链表[0]的数据也会被第二组数据覆盖,才会出现上面的问题,求解。

以及补充和问题本身变量名有出入是因为问题里面有进行删减

展开

总结

以上是生活随笔为你收集整理的java 链表 传递_java 链表 传递过程中的问题的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。