假设我有一个DataStructure
,其中有n
元素(0,1,...,n-1)
。
13,14,15,16,17
添加逗号和空格(在Java中)的最佳方式是什么?
以下是我采取的方法:
// 1st approach
public void printStuff(ArrayList<Integer> input) {
for (int i=0; i<input.size()-1; i++) {
System.out.print(input.get(i) + ", ");
}
System.out.println(input.get(input.size()-1);
}
另一次尝试
// 2nd approach
public void printStuff(ArrayList<Integer> input) {
StringBuilder sb = new StringBuilder();
for (int i=0; i<input.size(); i++) {
sb.append(input.get(i)+", ");
}
sb.substring(0, input.size()-2);
System.out.println(sb.toString());
}
Java8的流式API最终提供了一种优雅的、原生的方式,无需借助难看的if-else结构或使用第三方。
假设您有一个MyClass
对象列表,并且MyClass
有一个getPropery()
访问方法返回一个int
,您可以执行如下操作:
List<MyClass> list = ...;
String concatination = list.stream()
.map(p -> String.valueOf(p.getProperty()))
.collect(Collectors.joining(", "));
问题内容: 我在SQL表中有一个文本备注字段,如果它是逗号,则需要删除该字段中的最后一个字符。 因此,例如,如果我有这些行,则需要从第2行和第4行中删除逗号。 输出为: 有任何想法吗? 问题答案: 使用和: 首先,您希望您的数据摆脱前导和尾随空格。然后检查第一个字符是否为。如果是的话,将其删除,否则什么也不做。然后又回来了。您可以使用删除第一个字符。 SQL小提琴
问题内容: 这是一种对整数数组进行排序的方法。如何从输出中删除最后一个分隔符? 输出量 期望的输出 问题答案: 如果您使用的是Java 8,则非常干净的解决方案是使用新类。此类旨在将Strings与自定义分隔符(可能还带有前缀/后缀)连接在一起。使用此类,您无需担心像在代码段中一样删除最后一个分隔符。 您还可以删除循环并改用Streams:
问题内容: 这是当前结果,可以每天更改 我需要帮助的是在下面实现此结果。 问题答案: 使用:
问题内容: 我从数据库中得到了String,它有多个逗号()。我想删除 最后一个逗号, 但实际上找不到一种简单的方法。 我有的: 我想要的是: 问题答案: 要删除紧随字符串结尾的部分,您可以执行以下操作: 相对于/ solution,它需要对此类情况进行特殊处理,这可以优雅地处理空列表(空字符串)。 示例代码: 注意: 由于存在有关零件的一些注释和建议的编辑:表达式应与要删除的尾部零件匹配。 如果
问题内容: 我有一个带有这种数据的mysql表 现在我有成千上万的这样的行。我希望对数据进行某种处理,使其看起来像: 是否有可能通过mysql或我必须手动执行。 问题答案: 您可以使用 : 您可以在这里阅读更多内容。 和更新语句: 您需要用表名和列替换的地方需要更新。
问题内容: 我正在编写一段代码,该代码应该输出用逗号分隔的项目列表。该列表是通过for循环生成的。我用 问题是我不知道如何摆脱列表中最后一个条目添加的最后一个逗号。它输出以下内容: 如何删除结尾的’,’? 问题答案: 传递给 您几乎可以使用print语句。 不需要循环,print具有以及参数。 一点解释 所述内置需要作为要打印参数中的任何数量的项目。将打印所有非关键字参数,并用分隔。的默认值为单个