数据录入管理系统

本文介绍了如何使用Java的Scanner类处理用户输入,创建User类表示用户数据,并在DataManage类中实现数据的录入(add方法)和查询(get方法),包括检查空闲空间和处理数据重复等问题。
摘要由CSDN通过智能技术生成

数据录入管理系统

  • 输入语句:
    • Scanner:输入各种类型数据的方法
      -比如:字符串,整数,浮点数
    • System
      • -System.out.print; 输出语句
      • System.in: 输入接口
      • System.exit();
      • System.gc(); JVM的垃圾回收器,将一些没有用的数据清理掉
      • 如果nextInt 后面是nextLine 会直接跳过nextLine读取:在后面加一个nextLine()吸收即可
  • 数组:Java自带的数据结构
    • 标识:[ ]

    • 格式:数组所存储的数据类型[ ] 数组变量名=new 数组所存储的数据类型[长度]

    • int [ ]arr = new int[10];

    • String [ ] arr1 =new String[10];

    • 每一个数组定义好后,都会给其中的数据进行默认赋值

    • 默认值:

      • 基本数据类型默认值 :数字类型-0/0.0 字符类型-0 空字符 Boolean-false

      • 引用数据类型: 字符串-null 其他任何类-null

    • 长度:数组的长度设定好之后不可变,数组的长度是一个常量

    • 下标:数组中每个存储空间的房间号

      • 从0开始依次递增1
      • 最大下标:数组长度-1
    • 使用数组

      • 存:数组名[下标]=值; arr[ 5 ]=10;arr[ 2 ] =“hello”;
      • 取:数据类型 变量名=数组名 [下标]; int n=arr[5]; String atr = arr1[2];
      • 存取都可以通过循环进行批量操作:
        -for(int i=0;i<arr.length;i++){arr [ i ]=值;}
public class ArrayDema {
	public static void main(String[]args) {
		//定义数组:
		int []arr = new int[20];
		//存入数据
		for(int i=0;i<arr.length;i++) {
			arr[i]=(int)(Math.random()*10);//将随机的数据转成整数
		}
		//取出数据查看
		for(int i=0;i<arr.length;i++) {
			System.out.println(" "+arr[i]);
		}
	}

}

数据录入

  • 存储的数据是:用户数据 class User{ }
    • 属性:id(不允许重复,不需要用户自己设置,按照添加的时间决定顺序) 用户名(不允许重复) 密码
  • 属性:
    • 最大的数据量maxSize
    • 存储数组 User[ ] userList = new User[maxSize];
    • 实时的数据个数 size
  • 系统启动的方法:
      1. 进入主页功能模块
    • 2.根据用户在主页模块选择的功能做分流,根据选择调用下面方法之一执行

    • add方法

      • 检查是否具有空闲空间(也可以扩容)
      • 需要用户输入用户名
      • 检测用户名是否重复
      • 输入密码
      • 再将账号密码存入一个新的用户对象中
      • 再将用户对象设置好id存入userList当中
      • size++;
    • get方法

    • remove方法

    • update方法

代码示例:

先创建一个User类,包含所涉及到的id,userName,password,以及输出语句

public class User {
	int id;
	String userName;
	String password;
	
	
	public String toString() {
		String info = "user{id="+id+"userName="+userName+",password="+password+"}";
		return info;//不直接打印就return
	}

}

接下来新建一个DataManage类来实现数据录入管理系统

import java.util.Scanner;

public class DataManage {
	//	 属性:
	//	 - 最大的数据量maxSize
	final int maxSize =100;
	//	 - 存储数组 User[ ] userList = new User[maxSize];
	 User[ ] userList = new User[maxSize];
	//	 - 实时的数据个数 size
	 int size;
	 
	 public void lunch() {
		 //输入器
		 Scanner sc = new Scanner (System.in);
		 while(true) {
		 System.out.println("-------------------------------");
		 System.out.println("-----欢迎使用数据录入管理系统------");
		 System.out.println("-------------------------------");
		 System.out.println("请输入需要使用功能指令:增加-add 查询-get 删除-remove 更新-update 退出-exit");
		 String action = sc.nextLine();
		 if(action.equals("add")) {
			 add(sc);	 
		 }else if(action.equals("get")) {
			 get(sc);
		 }else if(action.equals("remove")) {
			 
		 }else if (action.equals("update")) {
			 
		 }else if (action.equals("exit")) {
			 System.out.print(0);//退出进程
		 }else {
			 System.err.println("~~输入无效请重新输入~~");//err——会变成红色显示
		 }
		 }
		 
	 
	 }
	 
	 public void add(Scanner sc) {
	//		 检查是否具有空闲空间(也可以扩容)
		 if(size>=maxSize) {
			 System.out.println("当前系统负载已满,无法存入数据");
			 return;
		 }
	//	 		- 需要用户输入用户名 
		 System.out.println("请输入用户名:");
		 String name =sc.nextLine();
	//	 		- 检测用户名是否重复
	//	 		- 输入密码
		 System.out.println("请输输入密码:");
		 String pwd = sc.nextLine();
	//	 		- 再将账号密码存入一个新的用户对象中
		 User user = new User();
		 user.userName=name;
		 user.password=pwd;
	//	 		- 再将用户对象设置好id存入userList当中
		 user.id=size;
		 userList [size]=user;
	//	 		- size++;
		 size++;
		 System.out.println("add ok!");
		  
	 }
	 
	 public void get(Scanner sc) {
		 System.out.println("请输入选择需要查询依据类型:id | name| all");
		 String action = sc.nextLine();
		 if(action.equals("id")) {
			 System.out.println("请输入需要查询的id");
			 int id =sc.nextInt();
			 sc.nextLine();//吸收多余字符
			 //将userList中每个已经存入的用户的id进行比较
			 for(int i=0;i<size;i++) {
				 //取出
				 User user = userList[i];
				 //判断
				 if(user.id==id) {
					 System.out.println(user.toString());
					 System.out.println("get ok!");
					 return;//结束查找
				 }
			 }
			 System.out.println("未找到有效数据");
			 
			 
		 }else if (action.equals("name")) {
			 System.out.println("请输入需要查询的用户名");
			String name =sc.nextLine();
			 
			 //将userList中每个已经存入的name进行比较
			 for(int i=0;i<size;i++) {
				 //取出
				 User user = userList[i];
				 //判断
				 if(user.userName.equals(name)) {
					 System.out.println(user.toString());
					 System.out.println("get ok!");
					 return;//结束查找
				 }
			 }
			 System.out.println("未找到有效数据");
			 
			 
		 }else if (action.equals("all")) {
			 String allInfo = "";
			 for (int i = 0; i < size; i++) {
			 User user = userList[i];
			 allInfo += user.toString() + "\n";
			 }
			 System.out.println(allInfo);
			 System.out.println("get ok~");
			 
			 
			 
		 }else {
			 System.err.println("输入有误!");
		 }
	 }
	 
	 
	 
	 public static void main (String[]args) {
		 new DataManage().lunch();
	 }
}


这就是一个具有add和get功能的数据录入管理系统
运行效果:
在这里插入图片描述
在这里插入图片描述

  • 12
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值