我有这个矩阵:
A B C D E
0 0 0 1 0 -> index 0 in arrList
0 0 1 1 0 -> index 1 in arrList
0 0 1 0 0 -> index 2 in arrList
1 0 1 0 0 -> index 3 in arrList
所以在ArrayList中,arrList包含: [[0,0,0,1,0],[0,0,1,1,0],[0,0,1,0,0],[ 1,0,1,0,0]]
如何从JAVA中的arrList获取A,B,C,D和E列中的值以获取作为示例输出?
Example output:
A: [0,0,0,1]
B: [0,0,0,0]
C: [0,1,1,1]
D: [1,1,0,0]
E: [0,0,0,0]
请帮忙。谢谢。
答案 0 :(得分:1)
花式Java 8解决方案
import java.util.List;
import java.util.stream.IntStream;
import static java.lang.System.lineSeparator;
import static java.util.Arrays.asList;
import static java.util.stream.Collectors.joining;
public class Example {
public static void main(String[] args) {
List<List<Integer>> matrix = asList(
asList(0, 0, 0, 1),
asList(0, 0, 0, 0),
asList(0, 1, 1, 1),
asList(1, 1, 0, 0),
asList(0, 0, 0, 0)
);
System.out.println("Example output:");
System.out.println(IntStream.range(0, matrix.size())
.mapToObj(i -> (char) ('A' + i) + ": [" + matrix.get(i)
.stream()
.map(String::valueOf)
.collect(joining(", "))
+ "]"
)
.collect(joining(lineSeparator())));
}
}
输出
Example output:
A: [0, 0, 0, 1]
B: [0, 0, 0, 0]
C: [0, 1, 1, 1]
D: [1, 1, 0, 0]
E: [0, 0, 0, 0]
作为一个大单行,因为为什么不
System.out.println(((Function<List<List<Integer>>, String>) (matrix -> "Example output: " + lineSeparator() + range(0, matrix.size()).mapToObj(i -> (char) ('A' + i) + ": [" + matrix.get(i).stream().map(String::valueOf).collect(joining(", ")) + "]").collect(joining(lineSeparator())))).apply(asList(asList(0, 0, 0, 1), asList(0, 0, 0, 0), asList(0, 1, 1, 1), asList(1, 1, 0, 0), asList(0, 0, 0, 0))));
// extra space for scroll
答案 1 :(得分:0)
如果这是Arrays的ArrayList,请使用:
for(int i=0;i<arrList.size();i++)
{
for(int j=0;j<arrList.get(i).length;j++)
{
System.out.print(arrList.get(i)[j]+" ");
}
System.out.printlm("");//To skip line
}
如果你的意思是使用数组:
for(int i=0;i<arrList.length;i++)
{
for(int j=0;j<arrList[i].length;j++)
{
System.out.print(arrList[i][j]+" ");
}
System.out.println("");//To skip line
}
答案 2 :(得分:0)
for(int row = 0; row < 4; row++){
for(int col = 0; col < 5; col++){
System.out.print(arrList[col][row]);
}
System.out.println();
}
这将为您提供所需的输出。
P.S。:在代码中进行编辑以获得您想要的格式的输出。
答案 3 :(得分:0)
for(List<Integer> row : arrList) {
for(int col : row) {
System.out.print(col + " ");
}
System.out.println();
}
希望这适合你。你也可以做一些映射,以便有A,B,C。并添加aditional格式。
干杯。
答案 4 :(得分:-1)
System.out.println(arrList.get(1).get(4)+" "); System.out.println(arrList.get(i).get(j)+" ");