返回本章节

返回作业目录


需求说明:

  • 将新增的用户信息添加到List集合。
  • 用户信息包括用户编号、姓名和性别。
  • 按照姓名和性别查找用户信息。

实现思路:

  1. 创建类UserInfo,在该类中定义3个String类型的变量编号(no)、姓名(name)、性别(sex),并创建这3个属性对应的getter()和setter()方法。
  2. 创建类UserInfoSys,在该类中定义List类型的实例属性list,将ArrayList实例赋值于该属性。
  3. 在UserInfoSys类中定义addUserInfo()方法,用于处理添加用户信息操作;定义deleteUserInfo()方法,该方法用于处理删除用户信息操作;定义selectUserInfo()方法,该方法用于处理查询用户信息操作。

实现代码:

UserInfo类:

package com.T7.List;

public class UserInfo {
private String no;//编号
private String name;//姓名
private String sex;//性别 public String getNo() {
return no;
}
public void setNo(String no) {
this.no = no;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
//无参构造
public UserInfo() {
super();
}
//有参构造
public UserInfo(String no, String name, String sex) {
super();
this.no = no;
this.name = name;
this.sex = sex;
}
//重载toString
@Override
public String toString() {
return "UserInfo [no=" + no + ", name=" + name + ", sex=" + sex + "]";
} }

UserInfoSys类:

package com.T7.List;

import java.util.ArrayList;
import java.util.Scanner; import javax.swing.text.html.HTMLDocument.Iterator; public class UserInfoSYS {
Scanner sc = new Scanner(System.in);
ArrayList list = new ArrayList();
//添加用户信息
public void addUserInfo() {
System.out.println("请输入用户账号:");
String no = sc.next();
System.out.println("请输入用户姓名");
String name = sc.next();
System.out.println("请输入性别:");
String sex = sc.next();
UserInfo userInfo = new UserInfo(no,name,sex);
list.add(userInfo);
System.out.println("添加用户成功");//示例赋值 }
//删除用户信息
public void deleteUserInfo() {
System.out.println("请输入要删除的账号:");
String no = sc.next();
for (int i = 0; i < list.size(); i++) {
UserInfo user = (UserInfo) list.get(i);
if (user.getNo().equals(no)) {
System.out.println("已删除编号为:" + user.getNo() + "的账户");
list.remove(i);
}
} }
//查询用户信息
public void selectUserInfo() {
UserInfo U = new UserInfo();
System.out.println("【1】按编号查询 【2】按姓名查询 【3】按性别查询");
switch (sc.nextInt()) { case 1:
System.out.println("请输入编号:");
String bh = sc.next();
for (int i = 0; i < list.size(); i++) {
UserInfo user = (UserInfo) list.get(i);
if (user.getNo().equals(bh)) {
System.out.println(list.get(i));
}
} break;
case 2:
System.out.println("请输入姓名:");
String xm = sc.next();
for (int i = 0; i < list.size(); i++) {
UserInfo user = (UserInfo) list.get(i);
if (user.getName().equals(xm)) {
System.out.println(list.get(i));
}
}
break;
case 3:
System.out.println("请输入性别:");
String xb = sc.next(); if (xb.equals("男")) {
for (int i = 0; i < list.size(); i++) {
UserInfo user = (UserInfo) list.get(i);
if (user.getSex().equals("男")) {
System.out.println(list.get(i));
}
}
} else if (xb.equals("女")) {
for (int i = 0; i < list.size(); i++) {
UserInfo user = (UserInfo) list.get(i);
if (user.getSex().equals("女")) {
System.out.println(list.get(i));
}
}
} break;
}
}
//遍历用户信息
public void showAll() {
for (int i = 0; i < list.size(); i++) {
UserInfo ui = (UserInfo)list.get(i);
System.out.println("当前系统所有用户信息:"+ui.getNo()+ui.getName()+ui.getSex());
}
}
}

Test类:

package com.T7.List;

import java.util.Scanner;

public class Test {

	public static void main(String[] args) {
UserInfoSYS us = new UserInfoSYS();
Scanner sc = new Scanner(System.in);
int index;
do {
System.out.println("请执行操作:1、添加 2、删除 3查询");
index = sc.nextInt();
switch (index) {
case 1:
us.addUserInfo();
us.showAll();
break;
case 2:
us.deleteUserInfo();
break;
case 3:
us.selectUserInfo();
break;
default:
System.out.println("输入的操作不存在,请重新输入");
break;
}
} while (index != 4);
} }

编写Java程序,利用List维护用户信息的更多相关文章

  1. 初学编写JAVA程序

    一.编写JAVA程序 编写JAVA程序,输出一行文本信息:“Hello world”,选择编辑器eclipse,打开之后编写程序 public class Hello{ public static v ...

  2. Java初学者作业——编写JAVA程序,根据用户输入课程名称,输出对应课程的简介,各门课程的简介见表

    返回本章节 返回作业目录 需求说明: 编写JAVA程序,根据用户输入课程名称,输出对应课程的简介,各门课程的简介见表 课程名称 课程简介 JAVA课程 JAVA语言是目前最流行的编写语言,在本课程中将 ...

  3. 编写Java程序,用户在网上购买商品(good),当用户买了一本书(book)、一顶帽子(hat)或者买了一双鞋子(shoe),卖家就会通过物流将商品邮寄给用户,使用简单工厂模式模拟这一过程。

    查看本章节 查看作业目录 需求说明: 编写Java程序,用户在网上购买商品(good),当用户买了一本书(book).一顶帽子(hat)或者买了一双鞋子(shoe),卖家就会通过物流将商品邮寄给用户, ...

  4. 35.按要求编写Java程序: (1)编写一个接口:InterfaceA,只含有一个方法int method(int n); (2)编写一个类:ClassA来实现接口InterfaceA,实现int method(int n)接口方 法时,要求计算1到n的和; (3)编写另一个类:ClassB来实现接口InterfaceA,实现int method(int n)接口 方法时,要求计算n的阶乘(n

      35.按要求编写Java程序: (1)编写一个接口:InterfaceA,只含有一个方法int method(int n): (2)编写一个类:ClassA来实现接口InterfaceA,实现in ...

  5. (转)Java程序利用main函数中args参数实现参数的传递

    Java程序利用main函数中args参数实现参数的传递 1.运行Java程序的同时,可以通过输入参数给main函数中的接收参数数组args[],供程序内部使用!即当你在Java命令行后面带上参数,J ...

  6. Java初学者作业——使用记事本编写Java程序

    返回本章节 返回作业目录 需求说明: 使用记事本编写 Java 程序,输出"大家好!我的梦想是做一名 Java 高级工程师!". 为 Java 程序添加单行和多行注释以及文档注释. ...

  7. Java初学者作业——编写Java程序,实现用户登录验证。

    返回本章节 返回作业目录 需求说明: 编写Java程序,实现用户登录验证. 若用户名与密码输入正确,则提示"登录成功,欢迎回来!",若用户名与密码不匹配,则提示"用户名和 ...

  8. Java初学者作业——编写Java程序,根据输入的某个班级的学员成绩,计算该班级学员的平均成绩,要求输入班级的人数。

    返回本章节 返回作业目录 需求说明: 编写Java程序,根据输入的某个班级的学员成绩,计算该班级学员的平均成绩,要求输入班级的人数. 实现思路: 声明变量sum.count以及avg用于存储总成绩.班 ...

  9. Java初学者作业——编写Java程序,输入一个数字,实现该数字阶乘的计算。

    返回本章节 返回作业目录 需求说明: 编写Java程序,输入一个数字,实现该数字阶乘的计算.一个数字的阶乘是所有小于及等于该数的正整数的积,自然数n的阶乘写作n! .例如,5的阶乘等于1*2*3*4* ...

  10. Java初学者作业——编写Java程序,实现判断所输入字符的类型(数字、小写字母、大写字母或其他字符)

    返回本章节 返回作业目录 需求说明: 编写Java程序,实现判断所输入字符的类型(数字.小写字母.大写字母或其他字符) 实现思路: 声明变量c,用于存储用户输入的字符. 通过Scanner接收用户输入 ...

随机推荐

  1. Linux信号1

    信号(signal)是一种软中断,他提供了一种处理异步事件的方法,也是进程间唯一的异步通信方式.在Linux系统中,根据POSIX标准扩展以后的信号机制,不仅可以用来通知某进程发生了什么事件,还可以给 ...

  2. java_IO总结(一)

    所谓IO,也就是Input与Output的缩写.在java中,IO涉及的范围比较大,这里主要讨论针对文件内容的读写 其他知识点将放置后续章节(我想,文章太长了,谁都没耐心翻到最后) 对于文件内容的操作 ...

  3. OC-基础数据类型

    七 字符串与基本数据类型转换 获取字符串的每个字符/字符串和其他数据类型转换 八 NSMutableString 基本概念/常用方法 九 NSArray NSArray基本概念/创建方式/注意事项/常 ...

  4. 虚机扩大容量与vm减少所占容量

    Linux的虚拟机碎片整理 sudo dd if=/dev/zero of=/free bs=1M sudo rm -f /free 镜像压缩 移动镜像 VBoxManage internalcomm ...

  5. Can a C++ class have an object of self type?

    A class declaration can contain static object of self type,it can also have pointer to self type,but ...

  6. 【Linux】【Basis】Grub

    GRUB(Boot Loader):   1. grub: GRand Unified Bootloader grub 0.x: grub legacy grub 1.x: grub2   2. gr ...

  7. 阿里云esc 安装 mysql5.7.27

    1. 下载:  wget  http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm 2. 安装: (1) yum -y in ...

  8. 【MySQL】排名函数

    https://www.cnblogs.com/shizhijie/p/9366247.html 排名函数 主要有rank和dense_rank两种 区别: rank在排名的时候,排名的键一样的时候是 ...

  9. Java oop 笔记

    摘要网址:http://note.youdao.com/noteshare?id=bbdc0b970721e40d327db983a2f96371

  10. Jenkins安全加固

    1.jenkins未授权访问 描述 jenkins不当配置可导致未授权访问管理控制台,可以通过脚本命令行执行系统命令.通过该漏洞,可以后台管理服务,通过脚本命令行功能执行系统命令,如反弹shell,w ...