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

白城学做网站免费站推广网站在线

白城学做网站,免费站推广网站在线,中国建设银行行号查询,福州网站建设推进单列集合:一次只能添加一个元素 双列集合:一次添加两个元素,左边的叫键(唯一的不能重复),右边叫值(可以重复),键和值一一对应。这样一对叫:键值对/键值对对象…

单列集合:一次只能添加一个元素

双列集合:一次添加两个元素,左边的叫键(唯一的不能重复),右边叫值(可以重复),键和值一一对应。这样一对叫:键值对/键值对对象/在Java中叫:Entry

Map常见API

Map是个接口,不能直接new Map,要new其实现类的对象

put方法的细节:有两个作用添加和覆盖

  • 在添加数据的时候,如果键不存在,那么直接把键值对对象添加到map集合当中,返回null。
  • 在添加数据的时候,如果键是存在的,那么会把原有的键值对对象覆盖,并把被覆盖的值进行返回

remove方法:删除后会返回对应的值。

Map遍历方式

三种:键找值、键值对、lambda表达式

键找值

先获取所有的键,放到单列集合里面,再使用get方法,依次获取每个键对应的值

public class A02_MapDemo2 {public static void main(String[] args) {//Map集合的第一种遍历方式//三个课堂练习:////练习一:  利用键找值的方式遍历map集合,要求:装着键的单列集合使用增强for的形式进行遍历//练习二:  利用键找值的方式遍历map集合,要求:装着键的单列集合使用迭代器的形式进行遍历//练习三:  利用键找值的方式遍历map集合,要求:装着键的单列集合使用lambda表达式的形式进行遍历//1.创建Map集合的对象Map<String,String> map = new HashMap<>();//2.添加元素map.put("尹志平","小龙女");map.put("郭靖","穆念慈");map.put("欧阳克","黄蓉");//3.通过键找值//3.1获取所有的键,把这些键放到一个单列集合当中Set<String> keys = map.keySet();//3.2遍历单列集合,得到每一个键for (String key : keys) {//System.out.println(key);//3.3 利用map集合中的键获取对应的值  getString value = map.get(key);System.out.println(key + " = " + value);}}
}

键值对

依次获取map里的键值对,通过get方法再依次获取里面的键和值

package com.itheima.a01mymap;import java.util.HashMap;
import java.util.Map;public class A03_MapDemo3 {public static void main(String[] args) {//Map集合的第二种遍历方式//三个课堂练习:////练习一:  通过键值对对象进行遍历map集合,要求:装着键值对对象的单列集合使用增强for的形式进行遍历//练习二:  通过键值对对象进行遍历map集合,要求:装着键值对对象的单列集合使用迭代器的形式进行遍历//练习三:  通过键值对对象进行遍历map集合,要求:装着键值对对象的单列集合使用lambda的形式进行遍历//1.创建Map集合的对象Map<String, String> map = new HashMap<>();//2.添加元素//键:人物的外号//值:人物的名字map.put("标枪选手", "马超");map.put("人物挂件", "明世隐");map.put("御龙骑士", "尹志平");/* //3.Map集合的第二种遍历方式//通过键值对对象进行遍历//3.1 通过一个方法获取所有的键值对对象,返回一个Set集合Set<Map.Entry<String, String>> entries = map.entrySet();//3.2 遍历entries这个集合,去得到里面的每一个键值对对象for (Map.Entry<String, String> entry : entries) {//entry  --->  "御龙骑士","尹志平"//3.3 利用entry调用get方法获取键和值String key = entry.getKey();String value = entry.getValue();System.out.println(key + "=" + value);}*///3.Map集合的第二种遍历方式//通过键值对对象进行遍历//3.1 通过一个方法获取所有的键值对对象,返回一个Set集合//3.2 遍历entries这个集合,去得到里面的每一个键值对对象for (Map.Entry<String, String> entry :  map.entrySet()) {//entry  --->  "御龙骑士","尹志平"//3.3 利用entry调用get方法获取键和值String key = entry.getKey();String value = entry.getValue();System.out.println(key + "=" + value);}}
}

lambda表达式

package com.itheima.a01mymap;import java.util.HashMap;
import java.util.Map;
import java.util.function.BiConsumer;public class A04_MapDemo4 {public static void main(String[] args) {//Map集合的第三种遍历方式//1.创建Map集合的对象Map<String,String> map = new HashMap<>();//2.添加元素//键:人物的名字//值:名人名言map.put("鲁迅","这句话是我说的");map.put("曹操","不可能绝对不可能");map.put("刘备","接着奏乐接着舞");map.put("柯镇恶","看我眼色行事");//3.利用lambda表达式进行遍历//底层://forEach其实就是利用第二种方式进行遍历,依次得到每一个键和值//再调用accept方法map.forEach(new BiConsumer<String, String>() {@Overridepublic void accept(String key, String value) {System.out.println(key + "=" + value);}});System.out.println("-----------------------------------");map.forEach((String key, String value)->{System.out.println(key + "=" + value);});System.out.println("-----------------------------------");map.forEach((key, value)-> System.out.println(key + "=" + value));}
}

HashMap

特点:是Map的实现类。无序,不重复,无索引都是指键。HashMap和HashSet的底层是一样的,都是哈希表结构

创建时,在底层创建一个长度为16,默认加载因子为0.75的数组,再利用put方法就可以添加数据了,put方法底层首先创建一个Entry对象,记录要添加的键和值,利用键计算哈希值(与要添加的值无关),确定要存入的数组索引,存入即可,如果该位置已经有元素,则调用equals方法比较的属性值,如果键里的数据一样,那么覆盖原有的Entry,键不一样则(jdk8以后)则挂在原来元素下面(链表),当链表长度超过8且数组长度>=64,则下面的链表自动转为红黑树。

LinkedHashMap

有序,不重复,无索引指的是键。有序是指:存取元素顺序一致

底层原理:底层数据结构是依然哈希表,只是每个键值对元素又额外的多了一个双链表的机制记录存储的顺序。每添加一个元素在它们之间形成一个双向链表。

TreeMap

TreeMap和TreeSet底层一样的,都是红黑树结构

键:不重复,无索引,可排序(是指对键可排序)默认按照键从小到大排列,也可以自己指定键排序规则。

排序规则实现方法:1实现comparable接口。2创建集合时传递comparator比较器对象

http://www.dtcms.com/wzjs/430439.html

相关文章:

  • 织梦高端大气网站模板宁波企业网站seo
  • 莆田网站建设设计aso排名优化知识
  • 企业网站空间域名武汉大学人民医院怎么样
  • 淘宝上做网站排名靠谱吗公司推广文案
  • 个人网站可以做点什么泰州网站建设优化
  • 宁波公司建设网站上海热点新闻
  • html基本结构框架代码安卓手机优化神器
  • 效果图制作网站有哪些门户网站有哪些
  • 教育咨询佛山seo
  • 怎样编辑网页关键词优化需要从哪些方面开展
  • 辽宁pc网站建设开发排行榜软件
  • 莱芜论坛莱芜都市网北京网站优化对策
  • 独立站需要多少钱seo技术交流
  • 网站建设实施过程巩义网络推广外包
  • 私人做网站可靠吗北京做网站公司哪家好
  • 建站宝盒站群版搜索引擎的工作原理是什么
  • 上海多家商场调整营业时间快速网站排名优化
  • 做亚马逊产品测评的网站怎么制作网站教程手机
  • 青岛物联网app开发公司杭州网站seo
  • 网站日程建设表全网营销图片
  • 淮南网站开发广告策划公司
  • 旅游的网站网络营销策划方案ppt模板
  • 手机视频网站建设网站优化排名公司哪家好
  • wordpress建企业站教程企业网站建设论文
  • 外贸公司做网站该去哪里找数据分析培训
  • 织梦系统做的商城网站买卖链接网
  • 长沙手机模板建站现在有什么技能培训班
  • 襄阳微网站建设台州百度快照优化公司
  • 网站开发与维护课程设计网店运营是做什么的
  • 网站首页做跳转深圳百度首页优化