java8 利用 stream,lambda 将一个数组转化为字符串String

将一个数组转化为字符串,除了调用 Arrays 中的 toString 方法外:

Arrays.toString(arr);


还能利用 java8 中的 stream. 可以用 collector 里面的 joining 方法,或者 用 reduce 拼接字符串。

举例:

import java.util.Arrays;
import java.util.stream.Collectors;

public class ForStream {

	public static void main(String[] args) {

		int[] arr = {1,2,3,4};
		
		String str1 = Arrays.stream(arr).boxed().map(i -> i.toString()) //必须将普通数组 boxed才能 在 map 里面 toString
				.collect(Collectors.joining(""));
		System.out.println(str1);

		String str2 = Arrays.stream(arr).boxed().map(i -> i.toString()).reduce("", String::concat);
		System.out.println(str2);
		
		String str3 = Arrays.stream(arr).boxed().map(Object :: toString).reduce("", String::concat); // 方法引用Object::toString
		System.out.println(str3);

	}

}

显示:1234


转载于:https://www.cnblogs.com/robinchen/p/11047618.html

你可能感兴趣的:(java)