机器人IP注册问题,带你了解map集合中contains的用法!

机器人IP注册问题,带你了解map集合中contains的用法

一、关于map集合的简单知识点

  1. Map集合:Map
  2. 特点:无序,由key(键)和Value(值)组成;
  3. 一个键对应一个值,不能有重复的键;
  4. Map是一个接口,无法创建对象,需要通过实现类去创建;

二、map中contains的基本介绍

  1. containsKey(key):用来查找map中是否存在某个键
  2. containsValue():用来查找map中是否存在某个值

三、题目要求

腾讯课堂针对目前机器人注册较多的情况,考虑到家庭用户同IP的情况存在, 采取了同一个IP地址最多只能申请三个账号,请完成相关功能的实现!

四、代码实现

public class Register {

	public static void main(String[] args) {
		// 创建键盘扫描器
		Scanner key = new Scanner(System.in);
		// 创建一个map集合存储用户信息
		Map map = new HashMap();
		Set set = map.keySet();
		//	IP地址:192.168.111.111
		boolean flag = true;
		while (flag) {
			// 提示用户输入自己的IP地址
			System.out.println("请输入您的IP地址:");
			// 接收用户输入的IP
			String IP = key.next();
			// 判断IP地址是否存在
			if (map.containsValue(IP)) {// 如果map集合里面有IP,则提示用户已经注册过了
				System.out.println("您已经注册此IP!");
			} else {// 如果不存在,则重新注册
				// 显示当前数据库
				System.out.println("当前数据库为:" + map);
				System.out.println("==========================");
				// 输入姓名
				System.out.println("请输入您的姓名:");
				// 接收
				Register.name = key.next();
				// 提示输入身份证
				System.out.println("请输入您的身份证号:");
				// 接收身份证
				String ID = key.next();
				//判断ID是否存在
				if(map.containsKey(ID)) {
					System.out.println("该身份证号已经被注册!");
				}else {				
				// 将姓名和IP存入集合中
				map.put(Register.name, IP);
				//将姓名和身份证号存入集合
				map.put(ID,name );
				// 输出集合中的内容
				System.out.println("注册成功!");
				}
				// 提示输入IP
				System.out.println("请输入您的IP:");
				// 接收IP并显示当前数据库
				String IP1 = key.next();
				// 判断当前IP是否和前面的IP一致
				if (IP1.equals(IP)) {
					// 显示数据库
					System.out.println("当前数据库为:" + map);
					System.out.println("=========================");
				} else {
					// 提示用户IP不一致,请重新注册
					System.out.println("您的IP不匹配,请重新注册!");
				}

			}
		}
		key.close();
		
	}

	// 定义用户信息(姓名和年龄)
	private static String name;
	private static int age;
	// set get 方法

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public int getAge() {
		return age;
	}

	public void setAge(int age) {
		this.age = age;
	}

	// 无参构造
	public Register() {
		super();
	}

	// 有参构造器
	public Register(String name, int age) {
		super();
		this.name = name;
		this.age = age;
	}

}

五、运行效果图

机器人IP注册问题,带你了解map集合中contains的用法!_第1张图片

今日分享就到这儿了,喜欢的朋友可以私信我哟!
机器人IP注册问题,带你了解map集合中contains的用法!_第2张图片

你可能感兴趣的:(map集合,小游戏,小系统,java)