为了账号安全,请及时绑定邮箱和手机立即绑定

package com.HelloWorld; import java.util.Arrays; public class HelloWorld { //完成 main 方法 public static void main(String[] args) { HelloWorld hello=new HelloWorld(); hello.sort(89 , -23 , 64 , 91 , 119

package com.HelloWorld;
import java.util.Arrays;
public class HelloWorld {
    
    	 //完成 main 方法
        public static void main(String[] args) {
            HelloWorld hello=new HelloWorld();
            
            hello.sort(89 , -23 , 64 , 91 , 119 , 52 , 73);
            
        }
        
        //定义方法完成成绩排序并输出前三名的功能
        public void sort(int scores[]){
        	Arrays.sort(scores);
        	for(int i=0;i<2;i++){
        		System.out.println(scores[i]);
        		if(scores[i]>100){
            		System.out.println("输入无效");
            	}else if(scores[i]<0){
            		System.out.println("输入无效");
            	}
        	}
        	
        	
        }
        这个在调试sort()的时候显示红色,为什么会不行呢?

正在回答

8 回答

package com.HelloWorld;
import java.util.Arrays;
public class HelloWorld {
    
    	 //完成 main 方法
        public static void main(String[] args) {
           int scores[]={89,-23,64,91,119,52,73};
        HelloWorld hello =new HelloWorld();
       
        System.out.println("前三名的成绩为:");
        hello.show(scores);
        }
        
        public void show(int []scores){
        	Arrays.sort(scores);
        	int num=0;
        	for(int i=scores.length-1;num<3;i--){
        		if(scores[i]>100^scores[i]<0){
        		continue;
        	}
        		num++;
        		System.out.println(scores[i]);
        		
        		}

      
    }
}

我把System.out.pringtln("前三名的成绩为:"+hello.show());

变成

System.out.println("前三名的成绩为:");
       hello.show(scores);

就可以了,为什么呢?

0 回复 有任何疑惑可以回复我~

System.out.pringtln("前三名的成绩为:"+hello.show());这个是你打的

0 回复 有任何疑惑可以回复我~

public class HelloWorld {
     
         //完成 main 方法
        public static void main(String[] args) {
            
           int []scores={89,-23,64,91,119,52,73};
           
        HelloWorld hello =new HelloWorld();
        
        
        System.out.println("前三名的成绩为:");
        hello.show(scores);
        }
         
        public void show(int []scores){
            
            Arrays.sort(scores);
            
            int num=0;
            
            for(int i=scores.length - 1;num<=3;i--){
                
                if(scores[i]>100 || scores[i]<0){
                    
                continue;
            }
                num++;
                
                System.out.println(scores[i]);
                 
               }
    }
你那个show方法不能写在println里面(你这都打错真是无语),并且这个方法是有参数的,你的参数呢,先把前面几章再认真看看吧

0 回复 有任何疑惑可以回复我~
#1

Irays

就是啊
2015-12-09 回复 有任何疑惑可以回复我~

其实我写的与题目偏了,这个程序表达的是 输入89 , -23 , 64 , 91 , 119 , 52 , 73

然后自动输出前三名。但是我也想知道这样的程序应该怎么弄。

我更改之后还是不行。

package com.HelloWorld;
import java.util.Arrays;
public class HelloWorld {
    
    	 //完成 main 方法
        public static void main(String[] args) {
           int scores[]={89,-23,64,91,119,52,73};
        HelloWorld hello =new HelloWorld();
        hello.show(scores);
        System.out.pringtln("前三名的成绩为:"+hello.show());
        }
        
        public void show(int []scores){
        	Arrays.sort(scores);
        	int num=0;
        	for(int i=scores.length;num<=3;i--){
        		if(scores[i]>100^scores[i]<0){
        		continue;
        	}
        		num++;
        		System.out.print(scores[i]);
        		
        		}

      
    }
}


0 回复 有任何疑惑可以回复我~

public class HelloWorld {
     
         //完成 main 方法
        public static void main(String[] args) {
            
            HelloWorld hello = new HelloWorld();
            
             int []scores = {89 , -23 , 64 , 91 , 119 , 52 , 73};
             
            hello.sort(scores);
            
        }
             //定义方法完成成绩排序并输出前三名的功能
        public void sort(int []scores){
            
            Arrays.sort(scores);
            int num = 0;
            
            for(int i = scores.length - 1; i >= 0 ; i--){
                if(scores[i] > 100 || scores[i] < 0){
                    continue;    
                }
                
                num ++;
                if (num > 3){
                    break;
                }
                System.out.println(scores[i]);
            }  
        }

你那个有好几个问题啊,改起来好麻烦,你先看看这个,不懂再说

0 回复 有任何疑惑可以回复我~
#1

这个小锋 提问者

没看懂我错在哪里,能否麻烦分点列出来呢?
2015-12-08 回复 有任何疑惑可以回复我~

显示红色好像是代表sort是JAVA关键字吧  关键字不能拿来定义方法名

0 回复 有任何疑惑可以回复我~

public void sort(int scores[])应该是public void sort(int[] scores)

hello.sort(89 , -23 , 64 , 91 , 119 , 52 , 73);

应该是int[] scores={89 , -23 , 64 , 91 , 119 , 52 , 73};

hello.sort(scores);

0 回复 有任何疑惑可以回复我~
#1

这个小锋 提问者

其实我写的与题目偏了,这个程序表达的是 输入89 , -23 , 64 , 91 , 119 , 52 , 73 然后自动输出前三名。但是我也想知道这样的程序应该怎么弄。 我更改之后还是不行。
2015-12-08 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

package com.HelloWorld; import java.util.Arrays; public class HelloWorld { //完成 main 方法 public static void main(String[] args) { HelloWorld hello=new HelloWorld(); hello.sort(89 , -23 , 64 , 91 , 119

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信