⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 addressbook.java

📁 基础性的JAVA源代码
💻 JAVA
字号:
package exec.day1002;
import java.util.*;
public class AddressBook {
	private HashMap map = new HashMap();
	public static void main(String args[]){
		AddressBook book = new AddressBook();
		book.init();
		if(args.length==0){
			book.print();
		}else if(args.length==1){
			book.getKeyOrVlaue(args[0]);
		}else if(args.length>1 && args.length%2==0){
			book.save(args);
			book.print();
		}else{
			throw new RuntimeException("参数个数错误!");
		}
	} 
	
	/**
	 * 保存电话记录
	 * @param str
	 */
	public void save(String str[]){
		for(int i=0;i<str.length;i+=2){
			if(validatePhoneNumber(str[i+1])){
				System.out.println(str[i]);
				System.out.println(str[i+1]);
				map.put(str[i], str[i+1]);
			}
		}
	}
	
	/**
	 * 校验电话号码是否为手机号码
	 * @param num
	 * @return
	 */
	public boolean validatePhoneNumber(String num){
		//判断长度是否为11位
		if(num.length()!=11){
			System.out.println("电话号码长度错误!");
			return false;
		}
		//判断是否全部为数字
		for(int i=0;i<num.length();i++){
			if(!Character.isDigit(num.charAt(i))){
				System.out.println("电话号码不全为数字!");
				return false;
			}
		}
		//判断是否以13或15开头
		if(!num.startsWith("13") && !num.startsWith("15")){
			System.out.println("电话号码开头错误!");
			return false;
		}
		return true;
	}
	
	
	/**
	 * 根据传递的字符串查找对应的记录
	 * @param str
	 */
	public void getKeyOrVlaue(String str){
		//str为姓名的情况
		if(map.containsKey(str)){
			System.out.println(str+": "+map.get(str));
		}
		//str为电话号码的情况
		else if(map.containsValue(str)){
			for(Object obj:map.keySet()){
				String key = (String)obj;
				String value = (String)map.get(key);
				if(value.equals(str)){
					System.out.println(key+": "+value);
				}
			}
		}else{
			System.out.println("查找不到 "+str+" 的对应记录!");
		}
	}
	
	/**
	 * 初始化,添加5条记录
	 */
	public void init(){
		map.put("Rain", "13899990000");
		map.put("LiuDeHua", "135666677777");
		map.put("LiMing", "13900002222");
		map.put("WuYanZu", "13766668888");
		map.put("Mandy", "13877662233");
	}
	
	/**
	 * 遍历通讯录,打印出所有记录
	 */
	public void print(){
		Set set = map.keySet();
		for(Object key:set){
			System.out.println(key+": "+map.get(key));
		}
	}
}










⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -