专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > Eclipse

至于 hasNextInt

发布时间:2010-06-05 15:36:13 文章来源:www.iduyao.cn 采编人员:星星草
关于 hasNextInt
import java.util.Scanner;
public class breakDemo {
public static void main(String[]args){
int score;
int sum = 0;
int avg;
int total;
Scanner input = new Scanner(System.in);
System.out.print("输入班级总人数");
if(input.hasNextInt()){
total = input.nextInt();
for(int i = 0 ; i<total;i++){
System.out.print("请输入第"+(i+1)+"位学生的成绩");
if(input.hasNextInt()){
score = input.nextInt();
if(score<80){
continue;
}
sum++;
}else{
System.out.print("输入出错");
}
}
System.out.println("80分以上的学生人数是:"+sum);
double rate = (double)sum/total*100;
System.out.println("80分学生在班级所占的比例为"+rate+"%");
}else{
System.out.println("输入错误");
total = input.nextInt();
}
  }
  }
运行的时候问题总是出现在,hasNextInt上的求分析

------解决方案--------------------
用正则表达式给你做了一个实例,只是验证了班级人数,下面的你可以照着葫芦画瓢
Java code

import java.util.Scanner;

public class BreakDemo {
    public static void main(String[]args){
        int score;
        int sum = 0;
        int avg;
        int total;
        Scanner input = new Scanner(System.in);
        System.out.print("输入班级总人数");
        while(true){
             String num=input.nextLine();
//        ;
        if(num.matches("^[1-9]\\d*$")){
            total = Integer.parseInt(num);
            for(int i = 0 ; i<total;i++){
                System.out.print("请输入第"+(i+1)+"位学生的成绩");
                if(input.hasNextInt()){
                    score = input.nextInt();
                    if(score<80){
                        continue;
                    }
                    sum++;
                }else{
                    System.out.print("输入出错");
                }
            }
            System.out.println("80分以上的学生人数是:"+sum);
            double rate = (double)sum/total*100;
            System.out.println("80分学生在班级所占的比例为"+rate+"%");
            break;
        }else{
            System.out.println("输入错误,请重新输入");
//            total = input.nextInt();
        }
        }

    }
}
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: