package com.javase.进阶.数组.arrays; /*对main方法中"String[] args"数组的理解- main方法由JVM负责调用;- JVM调用main方法的时候一定会传一个String数组过来,且该数组的长度为0,也就是说传递过来的数组没有内容;- 该数组是为用户准备的,它能在控制台上接受用户输入,操作方式:- 在DOS窗口中:1、先编译:javac MainStringArgs.java2、再运行:Java MainStringArgs xyz 123 ha hello回车- 在IDEA工具中:1、点击Run菜单--->Edit Configurations...--->Application--->点击对应的Java程序--->在右侧Program arguments:中输入xyz 123 ha hello--->点击"OK"2、在IDEA中运行该程序。回车后,JVM会根据空格对"xyz 123 ha hello"进行分离,然后自动放到"String[] args"数组中从而该数组变成:{"xyz","123","ha","hello"},此时"args,length=4"不再是"0"*/ /*理解main方法中的"String[] args"数组后,我们来看看它的应用。如下需求:模拟一个用户系统,该系统必须输入“用户名”和“密码”并验证正确之后才能使用,正确密码是"admin"、"123"*/ public class MainStringArgs {public static void main(String[] args) {//因为“用户名”和“密码”是两个字符串,所以我们先来判断"String[] args"的长度是否等于2if (args.length != 2){System.out.println("运行该程序需要输入\"用户名\"和\"密码\",否则无法运行!");return;}//程序运行到此,说明用户已经输入了用户名和密码,下面我们对用户名和密码的正确与否进行判断//首先我们来获取用户输入用户名和密码String userName = args[0];String password = args[1];//获取到用户名和密码,我们来判断用户名和密码是否正确//这里我们把"admin"和"123"写在前面可以有效避免出现空指针异常,即使"userName"和"password"是"null"也不会出现空指针异常if ("admin".equals(userName) && "123".equals(password)){System.out.println("欢迎" + userName +"使用本系统!");}else {System.out.println("用户名或密码错误,请重新输入!");}} } /*1、在没有输入用户名和密码或者不小心多输入了一个字符串的时候,程序运行结果:运行该程序需要输入"用户名"和"密码",否则无法运行!2、如果用户名和密码有一项输入错误,程序运行结果:用户名或密码错误,请重新输入!3、如果用户名和密码都正确,程序运行结果:欢迎admin使用本系统!*/