gpt4 book ai didi

java - Arraylist 输出未按预期输出

转载 作者:行者123 更新时间:2023-12-01 12:39:04 25 4
gpt4 key购买 nike

请原谅我的格式,我是编码和这些板的新手。我正在尝试制作一个简单的待办事项列表作为java中的练习。它从文本文件中读取并解析数据,然后对其进行排序和打印。

我的输出如下所示:[ToDoList003_002.ToDo@4cc7014c]输出应该类似于:[获取牛奶,重要,高优先级,紧急]

package ToDoList003_002;


import java.util.*;
import java.io.*;


public class ToDoList002 {
ArrayList<ToDo> toDoList=new ArrayList<ToDo>();

public static void main(String[] args) {

new ToDoList002().go();
}//close main

public void go(){
getItems();
Collections.sort(toDoList); //002
System.out.println(toDoList);

}

void getItems(){
try{
File file=new File("/Users/lew/Dropbox/JAVA/CodePractice/src/ToDoList003_002/todolist.txt");
BufferedReader reader = new BufferedReader (new FileReader(file));
String line=null;
while ((line=reader.readLine()) !=null){
addItem(line);
}
}catch(Exception ex){
ex.printStackTrace();
}



}

void addItem(String lineToParse){
String[] tokens=lineToParse.split("/");
//toDoList.add(tokens[0]);
//toDoList.add(tokens[1]);
ToDo nextTodo= new ToDo(tokens[0], tokens[1],tokens[2],tokens[3]);
toDoList.add(nextTodo);
}



//private static void add(String string) {
// TODO Auto-generated method stub

}





package ToDoList003_002;

import java.util.ArrayList;

public class ToDo implements Comparable<ToDo>{
String detail;
String importance;
String priority;
String urgency;

public int compareTo (ToDo d){
return detail.compareTo(d.getDetail());
}

ToDo(String d, String i, String p, String u){
detail=d;
importance=i;
priority=p;
urgency=u;
//set variables in constructor
}
public String getDetail(){
return detail;
}

public String getImportance(){
return importance;
}

public String getPriority(){
return priority;
}

public String getUrgency(){
return urgency;

public String toString(){
return detail;
}

最佳答案

您可以使用 for-each 循环来打印列表的内容,如下所示:注意:您必须重写 ToDo 类的 toString() 并使用它

   public static void main(String[] args) {
List<String> ls = new ArrayList<String>(); // use ToDo instead of String here
ls.add("a");
ls.add("b");
ls.add("c");
for (String s : ls) {
System.out.println(s);
}
}

O/P

a
b
c

重写Todo类的toString(),如下所示:

@Override
public String toString() {
return detail + "," + importance ; // add other fields if you want

}

关于java - Arraylist 输出未按预期输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25289461/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com