gpt4 book ai didi

java - java编译中的不相关内容

转载 作者:行者123 更新时间:2023-12-01 20:13:13 25 4
gpt4 key购买 nike

有人能好心告诉我为什么 javac 在执行以下代码行时会打印带有零的额外行吗?我故意在第一行中打印了可能的行数,它恰好等于非零行数。有什么建议吗?代码:

int[] fa = new int[15];
int[][] sa = new int[100][3];
int a=0, b=0;

for(int i=0; i<15; i++){
fa[i] = i+1;
}


for(int i=0; i<fa.length; i++){
for(int j=i+1; j<fa.length; j++){
for(int k=j+1; k<fa.length; k++){
if(fa[i]+fa[j]+fa[k]==15){
sa[a][0] = fa[i];
sa[a][1] = fa[j];
sa[a][2] = fa[k];
a++;
}
}
}
}
System.out.println(a);
for(int i=0; i<sa.length; i++){
for(int j=0; j<3; j++){
System.out.print(sa[i][j]+" ");
}
System.out.println();
}

输出:

12
1 2 12
1 3 11
1 4 10
1 5 9
1 6 8
2 3 10
2 4 9
2 5 8
2 6 7
3 4 8
3 5 7
4 5 6
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0

最佳答案

要打印,您正在迭代 sa:

for(int i=0; i<sa.length; i++){

一开始您就声明它有 100 行(默认值为 0):

int[][] sa = new int[100][3];

它显示这 100 行,与您在第二个 forfa 上执行的操作无关。

尝试:

for(int i=0; i<a; i++){
for(int j=0; j<3; j++){
System.out.print(sa[i][j]+" ");
}
System.out.println();
}

关于java - java编译中的不相关内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46343936/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com