当前位置: 首页 > 知识库问答 >
问题:

打印ArrayList的每个元素并在字符串java中使用

皇甫波峻
2023-03-14

我想获取ArrayList的每个元素并使用它来创建一个字符串:

  1. 包含与ArrayList和、、中的元素一样多的单词
  2. 将为每个单词打印ArrayList中的int值

为了更清楚,我想打印一个字符串,如下所示:

System.out.println(result);
element(0), element(1), element(2), element(3)

不幸的是,我只从ArrayList中获取最后一个整数的值,但“元素”字数是正确的,所以我的实际结果字符串如下所示:

System.out.println(result);
element(3), element(3), element(3), element(3)

ArrayList只有4个元素:

[0, 1, 2, 3]

要生成此错误字符串,我使用以下代码:

List<Integer> intList = new ArrayList<Integer>();
int intValue;
String result;

int n = intList.size();
for (int i=0; i < n; i++) {
    intValue = intList.get(i);
    result = String.join(", ", java.util.Collections.nCopies(n,  "element("+intValue+")"));
}

那么,如何使用ArrayList的所有值生成正确的字符串呢?

共有1个答案

解飞语
2023-03-14

在这里:

for ... {
  result = String.join(...)
}

在循环中,您可以在每次迭代期间将连接的字符串重新分配给结果。换句话说:在循环(n)中,您丢弃了在循环(n-1)中创建的内容。

尝试改用=。或者选择:

StringBuilder builder = new StringBuilder;
for ... {
  builder.append(...
}
String finalResult = builder.toString();

相反。

使用生成器时:

  • 使您的意图更加明确(您打算最终构建一个字符串)
  • 提供了一些轻微的性能改进(考虑到此处的“小规模”,这并不重要)
 类似资料:
  • 问题内容: 我在Jenkins(v2.7.1)中完成了Pipeline作业,在此我想打印多行字符串参数()的每个元素,每行3个字符串: Foo , Bar , Baz 作为输入。 因此,我尝试了以下语法(使用和): 但是它失败了: :尚不支持在经过CPS转换的闭包上调用public static java.lang.Object org.codehaus.groovy.runtime.Defaul

  • 问题内容: 我如何在arraylist“列表”中打印元素“ e”? 问题答案: 您是要打印整个列表还是要遍历列表的每个元素?两种打印您的类有意义的东西的方法都需要重写该类的方法(如其他答案所述)以返回有效结果。 此代码的输出是:

  • 假设我有这个文本“1729373672---jsd72h” 客户ID:1729373672客户密码:jsd72h

  • 我刚接触JasperReports,在解决一个问题时遇到了问题。 我有一份报告和一个字段,它是

  • 我的想法是打印一些城市之间的距离(entfernung)。所以出于测试原因,我只输入了0号城市(柏林)和其他城市之间的距离。最终我想写 或者至少这似乎是我的最佳选择-但出于某种原因,我在运行此代码时遇到了nullpointerexception: Sie haben folgende Staedte zur Auswahl:0:柏林1:汉堡2:基尔3:慕尼黑4:斯图加特5:德累斯顿6:海德堡 BI

  • 我正在写一个程序来跟踪学校的班级和学生。我有学校、教室和学生用品。学校包含教室对象的ArrayList,每个教室包含学生对象的ArrayList。 我试图在学校类中编写一个方法,使用字符串名称和字符串classroomName作为参数来删除学生。 这就是我到目前为止所做的: 我认为这不起作用,因为学生对象的ArrayList是在课堂上声明的。 是否有一种方法可以通过对象ArrayList搜索使用非