Мне сложно узнать, как написать мой метод toString, чтобы получить результат каждого из моих медведей в моей программе. Я хочу, чтобы на выходе отображались «Race-Points - TotalPoints». Но не может справиться с этим, несмотря на то, что остальная часть кода, похоже, компилируется.Как написать метод toString для ArrayList?
Нужно ли иметь toString, определенную в обоих классах, или что мне не хватает? Я проверил несколько других вопросов, которые похожи, и это похоже на альтернативу? Но как это наиболее эффективно реализовано?
Во-первых класса медведя:
import java.util.ArrayList;
public class Bear {
public static void main(String[] args) {
Bear b = new Bear("Sebastian", 100, "Brownbear");
ArrayList <Bear> bears = new ArrayList<Bear>();
bears.add(b);
}
private String name;
private int points;
private String race;
public Bear(String name, int points, String race) {
this.name = name;
this.points = points;
this.race = race;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getRace() {
return race;
}
public void setRace(String race) {
this.race = race;
}
public int getInitialPoints() {
return points;
}
public int getPoints() {
int oldPoints = points;
points /= 2;
return oldPoints;
}
}
Во-вторых, класс BearCollection:
import java.util.ArrayList;
public class BearCollection {
ArrayList <Bear> bears = new ArrayList<Bear>();
int totalPoints = 0;
public void add (Bear b) {
for (Bear inCollection : bears) {
if(b.getName().equals(inCollection.getName())) {
return;
}
}
for (Bear inCollection : bears)
if (b.getRace().equals(inCollection.getRace())) {
for(int i = bears.size(); i > 0; i --) {
if(bears.get(i).getRace().equals(b.getRace())) {
b.getPoints();
i = 0;
}
}
}
totalPoints += b.getInitialPoints();
bears.add(b) ;
}
public String toString(){
return ;
}
Посмотрите на это http://stackoverflow.com/questions/18129505/how-can-i-override-the-tostring-method-of-an-arraylist-in-java – freedev
При всем моем уважении вы «Не всерьез говорить нам, что у вас проблемы с« возвратом », не так ли? –
Конечно, я понимаю, что мой тостер совершенно пуст в тот момент, когда я просто не понимаю, что я должен положить туда, чтобы получить правильный результат. Я просто поставил toStringmethod там, чтобы показать, куда я должен был идти. (но я полный новичок) – wilhelmeriksson