gpt4 book ai didi

java - 如何打印存储在数组中的对象的实例

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

所以我需要打印出数组的不同实例。使用下面的代码。数组中的所有内容都会打印出来,甚至数组中未填充任何内容的部分也会打印出来。如果我在每个 if 语句中添加一个 break 语句,它只会打印该数组的最后一个实例,而不是存储的所有内容。

public static void display(ExampleA[] example)
{
for(int pos = 0; pos < example.length; pos++)
{
output += "Example number " + (i + 1);
if(example[pos] instanceof A)
{
output += example[pos].toString() + "\n\n";
}

if(example[pos] instanceof B)
{
output += example[pos].toString() + "\n\n";
}

}

我希望它做的是打印出按实例分组在一起的数组中的所有内容。而不是部分为空的整个数组。

最佳答案

您可以创建两个输出变量,一个用于A实例,一个用于B实例。然后,您可以将每个实例附加到其相应的输出变量,并在最后打印出输出变量。这是使用您的代码的示例:

public static void display(ExampleA[] example)
{
for(int pos = 0; pos < example.length; pos++)
{
if(example[pos] instanceof A)
{
outputA += "Example number " + (i + 1);
outputA += example[pos].toString() + "\n\n";
}

if(example[pos] instanceof B)
{
outputB += "Example number " + (i + 1);
outputB += example[pos].toString() + "\n\n";
}

}

System.out.println("A:\n" + outputA);
System.out.println("B:\n" + outputB);
}

您还应该考虑使用StringBuilder附加字符串,因为它比使用 +=

快得多

关于java - 如何打印存储在数组中的对象的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27204308/

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