HashMap的相关基础知识的背景回顾

来源:互联网 发布:华为 java工程师 编辑:程序博客网 时间:2024/06/08 16:25
import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;/** * Title:map在实际中的应用 * HashMap的相关基础知识的背景回顾: * 1、HashMap是非线程安全的; * 2、HashMap的get()方法来获取获取map中的对象,当get(key)为空的时,map返货的object为null; * 3、HashMap的负载因子为0.75,如果HashMap的大小超出了定义的容量,那么HashMap将会和其他的集合类一样创建 * 原来两倍大的HashMap的bucket数组来重新调整新的HashMap。 * 4、HashMap的初始大小为16,负载因子为0.75,增加的大小为2的次幂。 * Description: TestDemo * @author lu * @date 2016年7月19日 下午3:25:33 */public class TestMap {    /*将大量的数据放到一个map中,设置map中的key—value值*/    public static Map<String, String> userMap() {        //创建一个map        Map<String, String> map=new HashMap<String, String>();        //设置List值,可扩展为从数据库读出的大量的数据        List<User> result = new ArrayList<User>();        User user = new User();        user.setId("1");        user.setName("zhangshang");        result.add(user);        User user2 = new User();        user2.setId("2");        user2.setName("shanghai");        result.add(user2);        User user3 = new User();        user3.setId("3");        user3.setName("beijing");        result.add(user3);        //将取出的数据放在map中        if(result.size()!=0){//在数据库中拿出数据时,这里的空判断是很有必要的            for (int i = 0; i < result.size(); i++) {                String id=result.get(i).getId();                String name=result.get(i).getName();                if(null==map.get(id)){                    map.put(id, name);                }            }        }        return map;     }    /*测试模块*/    public static void main(String[] args) {        Map<String, String> map=userMap();        System.out.println("生成的map:"+map);        //String id1="2";        String id1="4";        if(map.get(id1)!=null){            System.out.println("根据条件匹配获取相应的值:"+map.get(id1));        } else {            System.out.println("根据条件匹配获取相应的值:"+map.get(id1));        }    }}
0 0
原创粉丝点击