編寫Java程序,利用List維護用戶信息

返回本章節

返回作業目錄


需求說明:

  • 將新增的用戶信息添加到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);
	}

}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章