java运行结果中有重复结果
2023-01-10阅读(790)
问:我编的java程序运行时总是重复输出结果,不知道为什么?
- 答:你定义变量的时候应该定义为int整形,byte最大只能表示127,当xiaoji变量为127时不能继续自加,所以每次判断127<=300为符合条件,不断循环
public class feichangaini {
public static void main(String args[]){
int xiaoji;
int muji;
int gongji;
for(xiaoji=0;xiaoji<=300;xiaoji++){
for(muji=0;muji<=20;muji++){
for(gongji=0;gongji<=33;gongji++){
if((gongji+muji+xiaoji==100)&&(xiaoji/3+muji*5+gongji*3==100)){
System.out.println("母 鸡:"+muji+"鸡:"+gongji+"鸡:"+xiaoji);
}else{
continue;
}
}
}
}
}
} - 答:你把byte xiaoji改成int xiaoji看看.
byte数据除了在文件/内存操作使用以外(byte是存储器基本存储单位),平时很少使用,int效率更高.
你的问题小鸡要到300,而byte是-127~128,出现了数值循环...... - 答:不是重复 是你死循环了
gongji + muji + xiaoji == 100
而你的小鸡是<=300超过100就死循环了 你看看 - 答:byte好像最大就127吧,到127,了,再++就等于-128了,永远到了不了300,死循环
问:select语句在Java中运行结果重复,与在SQL中运行不同
- 答:getRow
int getRow()
throws SQLException检索当前行编号。第一行为 1 号,第二行为 2 号,依此类推。
返回:
当前行的编号;如果不存在当前行,则返回 0
抛出:
SQLException - 如果发生数据库访问错误
从以下版本开始:
1.2
问:JAVA输出结果,重复好几遍
- 答:你是想把a里面的倒序输给b,并输出吧。
你用了两层for循环,每个循环10次,一共就会循环10*10=100次,每个数输出10次。
用一个for循环就够了:
b=new int[10];
for(int i=0;i<a.length;i++)
{
b[i]=a[9-i];
System.out.print(" "+b[i]);
} - 答: for(int i=0;i<a.length;i++)
{
System.out.print(" "+b[a.length-i]);
for(int j=0;j<b.length;j++)
{
b[j]=a[9-i];
}
} - 答:因为你打印的是嵌套在里面的是for循环数组b。b的长度就是10,所以会打印10次啊。
直接把打印语句放在外层的for循环里面就可以了 - 答:这个是正常的,你在b=new int[10]; 的时候给b 对象赋值了,你可以把b.length 打印出来看看。
10*10=100 应该是打印100个 - 答:你是不是想做冒泡排序?