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个
- 答:你是不是想做冒泡排序?