Exception in thread "main" java.lang.Error: Unresolved compilation problem:
at user.user.main(user.java:7)
是因为编译器的版本与Java版本不一样吗?
import java.util.Scanner;
public class user{
//存储用户密码
public static String arr1[] = new String[3];
public static String arr2[] = new String[3];
static int index = 0;
public static void main(String[] args) {
arr1[0]="heima";
arr2[0]="123123";
while(true) {
Scanner scan = new Scanner(System.in);
System.out.println("请选择功能");
String str=scan.next();
if(str.equals("1")) {
login();
}else if(str.equals("2")) {
register();
}else if(str.equals("3")) {
show(); //用户退出
break;
}else if(str.equals("0")) {
System.exit(0);
}else {
System.out.println("输入错误");
}
}
}
/*登录功能,键盘输入用户名和密码*/
public static void login(){
for(int i=0;i<3;i++) {
Scanner scan1 = new Scanner(System.in);
System.out.println("请输入用户名");
String str1 = scan1.next();
Scanner scan2 = new Scanner(System.in);
System.out.println("请输入用户名");
String str2 = scan2.next();
for(int i1 = 0;i1<arr2.length;i1++) {
if(str1.equals(arr1[1])&&str2.equals(arr1[1])) {
System.out.println ("登录成功");
return ;
}
}
System.out.println ("登录失败,请重新输入");
}
}
/*
* 注册功能,键盘输入用户名与密码
* 定义一个boolean变量,使用for循环判断用户是否存在
* 如果用户不存在,在数组中输入注册的密码时可能会有数组长度不够的情况,所以需要使用到增加数组的长度,这里调运增加数值长度的方法add
*/
public static void register() {
Scanner scan1 = new Scanner(System.in);
System.out.println("请输入用户名");
String str1 = scan1.next();
Scanner scan2 = new Scanner(System.in);
System.out.println("请输入密码");
String str2 = scan2.next();
boolean flag=true;
for(int i=0;i<arr1.length;i++) {
if(str1.equals(arr1[i])) {
System.out.println("用户名已存在");
flag=false;
}
}
if(flag==true) {
index++;
if(index<arr1.length) {
arr1[index] = str1;
arr2[index] = str2;
System.out.println("注册成功");
}else {
add();
arr1[index] = str1;
arr2[index] = str2;
System.out.println("注册成功");
}
}
}
/*
* 查看功能
* 使用for循环打印两个数组的长度
*/
public static void show() {
for(int i=0;i<arr1.length;i++) {
if(arr1[i]!=null) {
System.out.println("用户名"+arr1[i]+"密码"+arr2[i]+"\n");
}
}
}
/*
* 增加数组长度
* 先定义两个新的数组并在原有的数组长度上加3
* 使用System的arraycopy方法复制原有的数组到新的数组
* 最后将新的数组赋值给原有的arr1与arr2
*/
public static void add() {
String newarray1[] = new String[arr1.length+3];
String newarray2[] = new String[arr2.length+3];
System.arraycopy(arr1, 0, newarray1, 0,arr1.length );
System.arraycopy(arr2, 0, newarray2, 0,arr2.length );
arr1=newarray1;
arr2=newarray2;
show();
}
/*
* 可操作功能
*/
public static void print() {
System.out.println("------------------黑马管理系统---------------------");
System.out.println("1.登录功能(login)");
System.out.println("2.注册功能(register)");
System.out.println("3.查看功能(show)");
System.out.println("0.登录功能(exit)");
System.out.println("------------------黑马管理系统---------------------");
}
}