【发布时间】:2021-08-20 08:07:16
【问题描述】:
我想在 java 中使用流,例如 .net 中的 LINQ。 我有两个数组,一个是 char 数组,另一个是 int 数组。 现在我使用 foreach 循环循环以使用两个数组打印一条消息,一个保存字符,另一个只是选择字符的位置。
代码如下:
char[] letter = {115, 116, 97, 99, 107, 111, 118, 101, 114, 102, 108, 119, 105, 110, 100, 103, 32 };
int[] pos = {0,1,2,3,4,5,6,7,8,9,10,5,11,16,12,0,16,4,12,13,15};
for(int s:pos){
System.out.print(letter[s]);
}
我想用流来做这个。
我的想法是做这样的事情。
Arrays.asList(
0,1,2,3,4,5,6,7,8,9,10,5,11,16,12,0,16,4,12,13,15
)
.stream()
.forEach(p -> p)
所以在 forEach 的 lambda 表达式中使用字母 char 数组,但现在可能会直接使用
letter[p]
【问题讨论】:
-
如果我让你试试这个 Arrays.stream(pos).forEach(p->System.out.println(letter[p]));
标签: java java-stream