cer*_*bin 8 java arrays java-8 java-stream
我想' '
使用流来计算2D数组中出现的字符(例如空格:).我试图找到一个解决方案.这是我的代码,使用嵌套循环:
public int countFreeSpaces() {
int freeSpaces = 0;
for (int i = 0; i < height; i++) {
for (int j = 0; j < width; j++) {
if (board[j][i] == ' ') freeSpaces++;
}
}
return freeSpaces;
}
Run Code Online (Sandbox Code Playgroud)
我相信这个答案会更具表现力:
int freeSpaces = (int) Arrays.stream(board)
.map(CharBuffer::wrap)
.flatMapToInt(CharBuffer::chars)
.filter(i -> i == ' ')
.count();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
627 次 |
| 最近记录: |