当前位置: 首页 > news >正文

北京专业网站制作介绍活动策划

北京专业网站制作介绍,活动策划,水果网站建设方案书,在线做拓扑图的网站一、Map 接口 接下来讲的都是基于 jdk8 来开展的。 1.1 特点 1、Map 与 Collection 并列存在。Map 是用于保存具有映射关系的数据,即 key-value。 2、Map 中的 key 和 value 可以是任何引用类型的数据类型。 3、Map 中的 key 不允许重复,原因和 HashSet…

一、Map 接口

        接下来讲的都是基于 jdk8 来开展的。

1.1 特点

        1、Map Collection 并列存在。Map 是用于保存具有映射关系的数据,即 key-value

        2、Map 中的 key value 可以是任何引用类型的数据类型。

        3、Map 中的 key 不允许重复,原因和 HashSet 一样。

        4、Map 中的 value 是可以重复的。

        5、Map 中的 key 可以为 nullvalue 也可以为 null,注意 key null 时只能有一个,value null 时可以有多个。

        6、常用 String 类作为 Map key

        7、key value 之间存在单向一对一关系,即通过指定的 key 总能找到对于的 value

        8、Map 存放数据的 key-value 示意图,一对 key-value 是放在一个 Node 中的,又因为 Node 实现了 Entry 接口,也有人说是一对 key-value 就是一个 Entry

1.2 常用实现类

        HashMapHashTableSortedMap(接口)、TreeMap LinkedHashMapProperties 等。

1.3 常用方法

public class TestMap {public static void main(String[] args) {Map map = new HashMap<>();// put 添加元素map.put("孙悟空","唐僧");map.put("孙悟空","猪八戒");map.put("宋江","潘金莲");map.put("武大郎","西门庆");map.put("曹操",null);map.put(null,"荀彧");// get 根据 key 获取元素Object o = map.get("武大郎");// 根据 key 删除元素map.remove("宋江");// 判断 key 是否存在boolean b = map.containsKey(null);System.out.println(b);// 获取 map 的元素个数System.out.println(map.size());// 判断 map 元素个数是否为 0System.out.println(map.isEmpty());// 清除 mapmap.clear();}
}

1.4 遍历方式

1.4.1 keySet 方式

public static void main(String[] args) {Map map = new HashMap<>();map.put("孙悟空","唐僧");map.put("武大郎","西门庆");// 先取出所有的 key,然后再取出 valueSet keySet = map.keySet();// (1) 使用增强 for 循环for (Object obj :keySet) {System.out.println(obj+"-"+map.get(obj));}System.out.println("-----------------------");// (2) 迭代器Iterator iterator = keySet.iterator();while (iterator.hasNext()) {Object next =  iterator.next();System.out.println(next+"-"+map.get(next));}
}

1.4.2 value 值方式

public static void main(String[] args) {Map map = new HashMap<>();map.put("孙悟空","唐僧");map.put("武大郎","西门庆");// 只能取出所有的 valuesCollection values = map.values();// (1) 增强 for 循环for (Object obj :values) {System.out.println(obj);}System.out.println("-----------------------");//(2)迭代器Iterator iterator1 = values.iterator();while(iterator1.hasNext()){Object next = iterator1.next();System.out.println(next);}
}

1.4.3 EntrySet 方式

public static void main(String[] args) {Map map = new HashMap<>();map.put("孙悟空","唐僧");map.put("武大郎","西门庆");Set set = map.entrySet();// (1) 增强 for 循环for (Object entry :set) {// 将 entry 转换成 Map.EntryMap.Entry m = (Map.Entry)entry;System.out.println(m.getKey()+"-"+m.getValue());}System.out.println("-----------------------");// (2) 迭代器Iterator iterator2 = set.iterator();while (iterator2.hasNext()) {Map.Entry m=  (Map.Entry) iterator2.next();System.out.println(m.getKey()+"-"+m.getValue());}
}

1.5 习题练习

        使用 HashMap 添加 3 个员工对象,要求:键为员工 id,值为员工对象。并遍历显示工资 > 18000 员工(遍历方式最少两种)。员工类:姓名、工资、员工 id

class Employee{private String id;private String name;private double salary;public Employee(String id, String name, double salary) {this.id = id;this.name = name;this.salary = salary;}// setter、getter、toString@Overridepublic String toString() {return "Employee{" +"id='" + id + '\'' +", name='" + name + '\'' +", salary=" + salary +'}';}
}
public static void main(String[] args) {Map map = new HashMap();Employee e1 = new Employee("1","张三",20000);Employee e2 = new Employee("2","李四",8000);Employee e3 = new Employee("3","王五",60000);map.put(e1.getId(),e1);map.put(e2.getId(),e2);map.put(e3.getId(),e3);Set set = map.keySet();for (Object key :set) {Employee employee = (Employee)map.get(key);if(employee.getSalary()>18000){System.out.println(key+"-"+employee);}}System.out.println("--------------");Iterator iterator = set.iterator();while (iterator.hasNext()) {Object key =  iterator.next();Employee employee = (Employee)map.get(key);if(employee.getSalary()>18000){System.out.println(key+"-"+employee);}}System.out.println("--------------");Set set1 = map.entrySet();for (Object entrySet :set1) {Map.Entry entry =  (Map.Entry)entrySet;Employee employee = (Employee) entry.getValue();if(employee.getSalary()>18000){System.out.println(entry.getKey()+"-"+employee);}}
}
http://www.dinnco.com/news/49460.html

相关文章:

  • 一蓝网站建设网站设计公司怎么样
  • web浏览器阻止activex控件怎么办洛阳seo网站
  • 做门户网站广告品牌推广经典案例
  • 日本做设计的网站有哪些爱站数据官网
  • 政府网站建设管理办法网站设计公司有哪些
  • 卖模板的网站互联网广告推广公司
  • 有什么做设计的兼职网站重庆seo网站
  • 手机制作网站主页软件济南做网站公司哪家好
  • 网站改版了北京网站优化实战
  • 临夏做网站常见的网络推广方式有哪些
  • 进什么网站接模具做营销策划方案范文
  • 画册设计流程旺道seo软件技术
  • 双鱼儿 网站建设营销管理制度范本
  • 使用java做网站东莞企业网站模板建站
  • 珠海中企网站建设长沙关键词排名软件
  • 微信手机网站开发今日热点新闻事件及评论
  • 网站源码 正在建设中做网络推广有哪些平台
  • 大连哪家网站做的好线上推广引流渠道
  • 做网站开发需要学什么semantic scholar
  • 1688做网站需要多少钱营销计划书7个步骤
  • 可以做点赞的网站赚钱电工培训机构
  • 西安网站维护兼职手机网站制作教程
  • win2012安装wordpress宁波网站推广优化外包
  • 电子商务网站开发费用调研报告账号权重查询入口
  • 互联网备案服务平台无锡百度seo优化
  • 公司如何做网站不发钱成都百度seo推广
  • 网站建设服务 行业代码海淀区seo引擎优化多少钱
  • 朋友用我的vps做网站百度推广基木鱼
  • 哈尔滨营销型网站制作怎么申请网站空间
  • 建网站做淘宝客可以吗编程培训机构