通常,我将执行以下操作:
System.out.println("Title DVD 1: " + dvd1.getTitle());
System.out.println("Title DVD 2: " + dvd2.getTitle());
然后我将获得DVD 1和DVD 2的标题。如果要打印100张DVD的标题,显然我需要很多
System.out.println.
我设法将这些 System.out.println 放入ArrayList中,如下所示:
ArrayList<String> displayDVDList = new ArrayList<String>();
for ( int i = 0; i <= 22; i++) {
displayDVDList.add("System.out.println(\"Title DVD " + i + " : \"
+ dvd" + i + ".getTitle());");
System.out.println(displayDVDList.get(i) + " ");
}
但是,我无法执行那些 System.out.println 来显示标题。因此,如何执行恰好是 System.out.println 命令的ArrayList值?
非常感谢您的帮助。谢谢。
答案 0 :(得分:2)
假设dvd1
和dvd2
的类型是Dvd
方法的类getTitle()
,则您的代码可能类似于以下内容,其中列表的元素不是String
个值,而是Dvd
个对象。
// Build list of DVDs
Random random = new Random();
ArrayList<Dvd> displayDVDList = new ArrayList<>();
for (int i = 0; i <= 22; i++) {
String dvdTitle = "DVD #" + (random.nextInt(1000) + 1);
displayDVDList.add(new Dvd(dvdTitle));
}
// Print list of DVDs
for (int i = 0; i < displayDVDList.size(); i++) {
Dvd dvd = displayDVDList.get(i);
System.out.println("Title DVD " + (i + 1) + ": " + dvd.getTitle());
}
答案 1 :(得分:0)
每个答案都是有帮助的,我正在添加它。 理解是,您希望打印对象的某些属性。采用 对象类的toString()方法,因为它是专门创建的 为了它 。使用arrayList.toString()并覆盖您的toString() 课。
class Person1
{
String name ;
String state;
public Person1(String name, String state) {
super();
this.name = name;
this.state = state;
}
public Person1() {
super();
}
@Override
public String toString() {
return "Person [name=" + name + ", state=" + state + "]";
}
}
public static void main(String[] args) {
Person nitin = new Person("nitin", "delhi");
Person chandan = new Person("chandan", "delhi");
Person anshu = new Person("anshu", "bihar");
Person rahul = new Person("rahul", "bihar");
Person amar = new Person("nitin", "UP");
List<Person> peoples = Arrays.asList(nitin,chandan, anshu, rahul,amar);
System.out.println(peoples);
}
答案 2 :(得分:-1)
您可以先加载所有内容,然后使用System.out.println打印。 Java 8有一种使用流运行的方法。例如:
ArrayList<String> displayDVDList = new ArrayList<String>();
displayDVDList.add("Title 1");
displayDVDList.add("Title 2");
displayDVDList.add("Title 3");
displayDVDList.add("Title 4");
displayDVDList.add("Title 5");
displayDVDList.forEach(System.out::println);
希望对您有帮助!