编写程序实现简单的登录注册功能。程序包含以下4个功能:
(1)登录功能,用户输入正确的账号密码进行成功;
(2)注册功能,输入用户名和密码进行注册;
(3)查看功能,查看所有的用户名与密码;
(4)退出功能,退出系统。
用户可以输入对应的编号进行相应的功能操作。例如,输入2进入注册功能,输入用户名和密码进行注册。
Test测试类
package anli01;
import java.util.Scanner;
public class test6 {
//存储用户名和密码的数组
static String[] arr1 =new String[3];
static String[] arr2 =new String[3];
static Scanner sc = new Scanner(System.in);
public static void main(String[] args) {
//保存测试的数据
//将语句放入一个循环当中 Ctrl+alt+t
while (true) {
arr1[0]="张三";
arr2[0]="123";
System.out.println("----------黑马系统----------");
System.out.println("1.查看功能");
System.out.println("2.登录功能");
System.out.println("3.注册功能");
System.out.println("4.退出系统");
int id = sc.nextInt();
switch (id){
case 1 :
show();
break;
case 2 :
login();
break;
case 3 :
register();
break;
case 4 :
System.out.println("感谢您的使用");
System.exit(0);
break;
default:
System.out.println("你输入的有误");
break;
}
}
}
//注册功能
private static void register() {
String username= null;
while (true) {
System.out.println("请输入用户名");
username = sc.next();
// 判断:输入的用户是否存在
boolean flag = false;
for (String s : arr1) {
if (s != null) {
if (s.equals(username)) {
flag = true;
break;
}
}
}
if (flag) {
System.out.println("用户名已存在,请重新输入");
}else{
break;
}
}
System.out.println("请输入密码");
String password= sc.next();
//判断数组是否装满了
boolean flag = true;//假设装满
for (int i=0; i< arr1.length;i++) {
if (arr1[i] == null) {
flag=false;
break;
}
}
if (flag==false){
//没有装满
for (int i=0; i< arr1.length;i++){
if (arr1[i]==null){
arr1[i]=username;
arr2[i]=password;
break;
}
}
}else {
//装满了,对数组扩容
String[] newArr1 =new String[arr1.length + 3];
String[] newArr2 =new String[arr2.length + 3];
//将原数组的数据全部复制到新数组中
System.arraycopy(arr1, 0,newArr1, 0,arr1.length);
System.arraycopy(arr2, 0,newArr2, 0,arr2.length);
arr1=newArr1;
arr2=newArr2;
//将用户名和密码保存
for (int i=0; i< arr1.length;i++){
if (arr1[i]==null){
arr1[i]=username;
arr2[i]=password;
break;
}
}
}
System.out.println("注册成功");
}
//登录方法
private static void login() {
System.out.println("请输入用户名");
String username= sc.next();
System.out.println("请输入密码");
String password= sc.next();
//判断输入的用户名和密码是否存在
for(int i=0; i< arr1.length;i++){
if (arr1[i] !=null){
if (arr1[i].equals(username)&&arr2[i].equals(password)){
System.out.println("登录成功");
return;
}
}
}
System.out.println("登录失败");
}
//查看功能
private static void show() {
//遍历数组,将用户名和密码展示
for (int i=0; i< arr1.length;i++){
if (arr1[i] !=null){
System.out.println("用户名:"+arr1[i]+",密码:"+arr2[i]);
}
}
}
}
结果展示