java学习

java学习

ciollection 集合

collection集合集合的顶层父级集合

collection 集合有两大接口 set接口 和 list接口

set接口元素无序但元素唯一

list 接口下元素可以重复,每一个元素都存在整数索引

list的遍历方式

(1)

        while (iterator.hasNext()){
            Object next = iterator.next();
            System.out.println(next);
        }

(2)for循环

list 有三个实现类 Arraylist linkedlist Vector

Arraylist 类:底层的数据结构是数组,查找快,删除慢,线程不安全,效率高

linkedlist类:底层的数据结构是链表,查找慢,删除快,线程不安全,效率高

Vector类:底层的数据结构是数组,查找快,删除慢,线程安全,效率低

Set接口下有三个实现类 hashSet linkedHashSet TreeSet

set接口遍历的方式

(1)迭代器

        while (iterator.hasNext()){
            Object next = iterator.next();
            System.out.println(next);
        }

(2)增强for

新式for循环遍历数组
1,明确容器中的元素是什么数据类型
2.容器的名字
for(容器中的元素的数据类型 当前遍历的元素名 : 容器名)

          
          for(int ele:arr)
          System.out.println(ele);
             } 

hashSet 类:底层结构是哈希表保证元素唯一性,需要重写hashCode方法和equals方法

linkedHashSet l类:元素有序 , 并且唯一,底层数据结构是链表和哈希表,查找慢,增删快,线程不安全

TreeSet类:底层结构是二叉树,可以对元素进行排序,两种排序,一种自然排序,一种比较器排序(compareable接口)

map 集合

map是以键——值对的方式存储数据的集合具有唯一性,指针对键有效,值可以重复

map集合的遍历方式

(1)根据键值获取值

keyStet()和get(Object key)

Set keySet = map.keySet();
for (String key : keySet) {
System.out.println(key+"===="+map.get(key));
}

(2)根据值对象获取键和值

entry这个接口下面的方法

​ getkey(): 获取值

​ getValue(): 获取值

        //遍历键值对 集合 ,通过键值对 对象 里面的方法取出键和值
        for (Map.Entry<String, String> entry : entries) {
            String key = entry.getKey();//获取键
            String value = entry.getValue();//获取值
            System.out.println(key+"====="+value);
        }

map有四个实现类Hashmap Hashtable LinkHashMap TreeMap

Hashmap 类: 底层结构是哈希表保证元素唯一,性需要重写hashCode方法和equals方法

Hashtable **** 类:不允许null键和null值 线程安全效率低

LinkHashMap 类:键唯一且有序,链表保证了键有序,哈希表保证了键唯一

shCode方法和equals方法

Hashtable **** 类:不允许null键和null值 线程安全效率低

LinkHashMap 类:键唯一且有序,链表保证了键有序,哈希表保证了键唯一

TreeMap 类: 底层结构是二叉树,可以对元素进行排序,两种排序,一种自然排序,一种比较器排序(compareable接口)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值