public:表示的这个程序的访问权限,表示的是任何的场合可以被引用,这样java虚拟机就可以找到main()方法,从而来运行javac程序
static:表明方法是静态的,不依赖类的对象的,是属于类的,在类加载的时候main()方法也随着加载到内存中去
void:main()方法是不需要返回值的
main:约定俗成,规定的
String[] args:从控制台接收参数
Scanner -是java类库的一个基础类,一个可以使用正则表达式来解析基本类型和字符串的简单文本扫描器。
input -声明的变量名
new Scanner() -给变量input分配空间,初始化,实例化
System.in -参数, 这里就是获取输入流的意思
while (in.hasNextInt()){}
hasNextInt()方法是判断控制台接收是否为数字,当你在控制台输入一个字符的时候,hasNextInt()判断你输入这个字符是不是数字,而不是接收值,当if判断通过之后执行接收,也就是你输入的那个字符,你也可以试试 public static void main(String[] args) { Scanner input = new Scanner(System.in); if(input.hasNextInt()){ int num = input.nextInt(); System.out.println(num); }else{ System.out.println("请输入正确数字!~"); } } 当你输入非数字的字符的时候他会直接进入else块,所以说hasNextInt()只起到判断作用而不是接收数据
int a = in.nextInt();//输入数字赋值给a
或者String s = in.nextLine();//输入一串字符,把他给s