Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
281 views
in Technique[技术] by (71.8m points)

java - How do I create a toString method for an ArrayList of objects?

I am tasked with creating a toString() method for each and every object in an ArrayList. I have no idea how to go about doing this. This is the class with the ArrayList

public class DogManager {
    private ArrayList<Dog> dogList;

    public DogManager() {
        this.dogList = new ArrayList<Dog>();
    }

    public void addDog(String nameOfDog) {
        this.dogList.add(new Dog(nameOfDog));
    }

    public String toString() {
        String results = "+";
        for (int i = 0; i < this.dogList.size(); i++) {
            results += " " + this.dogList.get(i);
        }
        return results;
    }
}

I know the toString() is wrong, but I can't figure out how to make it return a description for each of the objects in that list.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

You are close. The easiest way I can think of is to also implement toString() for Dog. Then in your DogManager class you can loop through each Dog and call its toString().

ie:

public String toString() {
    String results = "+";
    for(Dog d : dogList) {
        results += d.toString(); //if you implement toString() for Dog then it will be added here
    }
    return results;
  }
}

edit: You can also format it however you like. I notice some answers separate each Dog by ","


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...