| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
编写一个计算平均分的抽象类ComputerAverage,类中有一个录入成绩方法input和一个抽象方法求平均分方法average。定义Gymnastics类和School类继承ComputerAverage类。 
Gymnastics类中计算选手的平均成绩的方法是去掉一个最低分,去掉一个最高分,然后求平均分。 
School中计算平均分的方法是直接是总分除以总科目。 
要求:测试类中要定义两个ComputerAverage对象(分别由Gymnastics类、 School类实例化),分别调用averge方法求得平均分。 
 
我的思路: 
由于输入的数字个数不确定,想用hasNextLine()如果输入了字符a结束输入,可是运行的时候老是报错。 
“类中有一个录入成绩方法input”这个要求是什么意思?不知道怎么实现。 
- import java.util.Scanner;
 
  
- public class Demo02 {
 
  
-         public static void main(String[] args) {
 
 -                 // TODO Auto-generated method stub
 
 -                 Scanner sc=new Scanner(System.in);
 
 -                 String str;
 
 -                 String []s = null;
 
 -                 while(sc.hasNextLine()) {
 
 -                         if(s.equals("a")) break;
 
 -                         str=sc.nextLine();
 
 -                         s=str.split(" ");
 
 -                         
 
 -                 }
 
 -                 for(int i=0;i<s.length;i++) {
 
 -                         System.out.println(s[i]);
 
 -                 }
 
 -                 
 
 -         }
 
 -         
 
  
- }
 
 
  复制代码 
就写一个函数 
- import java.util.Arrays;
 
 - import java.util.Scanner;
 
  
- public class Test2 {
 
 -     public static void main(String[] args) {
 
 -         // TODO Auto-generated method stub
 
 -         String[] s = input();
 
 -         
 
 -         for(int i = 0; i < s.length; i++)
 
 -         {
 
 -             System.out.println(s[i]);
 
 -         }
 
  
-     }
 
  
-     public static String[] input()
 
 -     {
 
 -         Scanner sc=new Scanner(System.in);
 
 -         String str = "";
 
 -         String[] str2 = null;
 
  
 
-         while(sc.hasNextLine()) {
 
 -             str=sc.nextLine();
 
 -             str2 = str.split(" ");
 
 -             if(str2[str2.length-1].equals("a"))
 
 -             {
 
 -                 break;
 
 -             }
 
  
-         }
 
 -         // 去除数组中最后一个元素
 
 -         str2 = Arrays.copyOf(str2,str2.length-1);
 
 -         return str2;
 
 -     }
 
 - }
 
 
  复制代码 
 
 
 |   
 
 
 
 |