1 问题
以作业题三题为例,需要输入学生的成绩等级,然后反映出相应等级的成绩范围。直接在程序里面写出学生等级的方法不利于做出一些改变,在逻辑上也不符合常理,所以选择设置程序从键盘输入等级然后反馈出相应的成绩范围。
2 方法
这个程序需要先引用Scanner类,Scanner cin = new Scanner(Scanner.in)这一句语句是为了从键盘接收数据,System.out.println(“请输入等级:”)这一句是next方式接收字符串,if语句是判断是否还有输入,然后就是定义n,令n = 从键盘输入的一个字符串,在这里由于我们题目的一个特殊性,所以我们必须采用nextLine而不能采用next,因为nextLine是配合字符串使用的,next则是配合整数使用的,接下来,因为需要判断n是否是相应的等级A、B、C、D,所以只能使用switch…case这个语句,因为if、if…else、else if这几个语句需要满足布尔表达式,只有switch可以满足我们的需求,比较键盘的输入之后,正确的就输出,不正确的就跳过。
import java.util.Scanner; public class 键盘输入 { public static void main(String[] args){ Scanner cin = new Scanner(System.in); System.out.println("请输入等级:"); if(cin.hasNextLine()){ String n = cin.nextLine(); switch (n){ case "A": System.out.println("85分以上(包括85分)"); break; case "B": System.out.println("70分以上(包括70分)"); break; case "C": System.out.println("60分以上(包括60)"); break; case "D": System.out.println("60分以下"); break; } } } } |
3 结语
针对Java从键盘上输入与输出问题,提出使用Scanner类方法,通过Scanner类实验,证明该方法是有效的,本文的方法相对于其他的一些方法可能会有一点冗长,应用了Scanner类的方法,可能会相对比较复杂,但是此程序拥有大的延展性,可以对此程序有更多的一些拓展与延伸,在此后希望对此程序进行缩短,简化,或者对此程序进行更大的拓展与延伸,使其更加高级化。