java+的数组分割符_Java:使用分隔符连接基元数组

小编典典

这是我想出的。有几种方法可以执行此操作,它们取决于您使用的工具。

使用StringUtils和ArrayUtils来自Common

Lang:

int[] arr = new int[] {1, 2, 3, 4, 5, 6, 7};

String result = StringUtils.join(ArrayUtils.toObject(arr), " - ");

您不能只使用它,StringUtils.join(arr, "-");因为StringUtils它没有方法的重载版本。虽然,它有方法StringUtils.join(int[], char)。

适用于1.2以上的任何Java版本。

使用Java 8流:

像这样:

int[] arr = new int[] {1, 2, 3, 4, 5, 6, 7};

String result = Arrays.stream(arr)

.mapToObj(String::valueOf)

.collect(Collectors.joining(" - "));

实际上,要使用流获得结果,有很多变体。

Java 8的方法String.join()仅适用于字符串,因此要使用它,您仍然必须转换int[]为String[]。

String[] sarr = Arrays.stream(arr).mapToObj(String::valueOf).toArray(String[]::new);

String result = String.join(" - ", sarr);

如果您坚持使用Java 7或更早版本且没有库​​,则可以编写自己的实用程序方法:

public static String myJoin(int[] arr, String separator) {

if (null == arr || 0 == arr.length) return "";

StringBuilder sb = new StringBuilder(256);

sb.append(arr[0]);

//if (arr.length == 1) return sb.toString();

for (int i = 1; i < arr.length; i++) sb.append(separator).append(arr[i]);

return sb.toString();

}

比您可以做的:

int[] arr = new int[] {1, 2, 3, 4, 5, 6, 7};

String result = myJoin(arr, " - ");

2020-09-15

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值