当前位置: 首页 > 面试题库 >

从打印语句中删除最后一个分隔符

宇文曦
2023-03-14
问题内容

这是一种对整数数组进行排序的方法。如何从输出中删除最后一个分隔符?

public void Sort(int[] sort) {
        for (int a:sort) {
            System.out.print(a+ ", ");
        }
    }

输出量

1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,

期望的输出

1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15

问题答案:

如果您使用的是Java
8,则非常干净的解决方案是使用新StringJoiner类。此类旨在将Strings与自定义分隔符(可能还带有前缀/后缀)连接在一起。使用此类,您无需担心像在代码段中一样删除最后一个分隔符。

public void sort(int[] sort) {
    StringJoiner sj = new StringJoiner(",");
    for (int a : sort) {
        sj.add(String.valueOf(a));
    }
    System.out.println(sj.toString());
}

您还可以删除for循环并改用Streams:

String str = Arrays.stream(sort).mapToObj(String::valueOf).collect(joining(","));


 类似资料:
  • 问题内容: 我正在用Python编写程序,并希望将终端中打印的最后一个字符替换为另一个字符。 伪代码为: 我正在使用Windows8 OS,Python 2.7和常规解释器。 到目前为止,我看到的所有选项都不适合我。(例如:,(#为1),)。 这些选项是在其他Stack Overflow问题或其他资源中提出的,似乎对我不起作用。 编辑 :也使用不会改变影响。它只是不会擦除最后打印的字符。相反,使用

  • 我想在我的android calculator应用程序中设置冗长的双倍数字格式2个问题。。。首先,我想启用按3分组,这样1200将显示为1200。但对于像1000这样的数字,我得到的是1,如何才能得到1000作为结果? 另一个问题是,我希望结果最多包含25个整数和4个小数位数。。。但即使我将Decimalformat max设置为25,当整数的数量超过18后,数字变成了零。例如,我想要的是1111

  • 如何使用Swift从String变量中删除最后一个字符?在文档中找不到它。 以下是完整的示例:

  • 假设我有一个,其中有元素。 添加逗号和空格(在Java中)的最佳方式是什么? 以下是我采取的方法: 另一次尝试

  • 有没有办法防止分割器显示在最后一个项目之后?

  • 问题内容: 从字符串中删除最后一个字符的最快方法是什么? 我有一个像 我想删除最后一个’,’并取回剩下的字符串: 最快的方法是什么? 问题答案: 首先,我尝试没有空格,并得到一个错误结果。 然后,我添加一个空格并获得良好的结果: