栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

数据结构(Java)——No2.集合框架中接口和其各自对应的常见实现类之间的关系

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

数据结构(Java)——No2.集合框架中接口和其各自对应的常见实现类之间的关系

数据结构(Java)——No2.集合框架中接口和其各自对应的常见实现类之间的关系
  • Collection 常用方法说明
    • Set 常用方法说明
      • TreeSet方法示例
      • HashSet方法示例
    • List 常用方法说明
      • 1.ArrayList(顺序表)
      • 2.linkedList(链表)
  • Map常用方法说明

Collection 常用方法说明
方法签名说明
boolean add(E e)将元素 e 放入集合中
void clear()删除集合中的所有元素
boolean isEmpty()判断集合是否没有任何元素,俗称空集合
boolean remove(Object e)如果元素 e 出现在集合中,删除其中一个
int size()返回集合中的元素个数
Object[] toArray()返回一个装有所有集合中元素的数组

方法示例:

import java.util.Collection;
import java.util.ArrayList;
import java.util.Arrays;
public class Demo {
	public static void main(String[] args) {
		Collection list = new ArrayList<>();
		System.out.println(list.size());	//0
		System.out.println(list.isEmpty()); //true
		list.add("我");						
		list.add("爱");						
		list.add("Java");					
		System.out.println(list.size());	//3
		System.out.println(list.isEmpty()); //false
		Object[] array = list.toArray();	//[我, 爱, Java]
		System.out.println(Arrays.toString(array));//我 	爱 	Java
		for (String s : list) {
			System.out.println(s);			//我
		}
		list.remove("爱");
		for (String s : list) {
			System.out.println(s);			//Java
		}
	list.clear();
		System.out.println(list.size());	//0
		System.out.println(list.isEmpty());	//true
	}
}

Set 常用方法说明
方法解释
boolean add(E e)添加元素,但重复元素不会被添加成功
void clear()清空集合
boolean contains(Object o)判断 o 是否在集合中
Iterator iterator()返回迭代器
boolean remove(Object o)删除集合中的 o
int size()返回set中元素的个数
boolean isEmpty()检测set是否为空,空返回true,否则返回false
Object[] toArray()将set中的元素转换为数组返回
boolean containsAll(Collection c)集合c中的元素是否在set中全部存在,是返回true,否则返回false
boolean addAll(Collection c)将集合c中的元素添加到set中,可以达到去重的效果
TreeSet方法示例
package com.yty;

import java.util.*;


public class Test {
    public static void main(String[] args) {
        Set s = new TreeSet<>();
        // add(key): 如果key不存在,则插入,返回ture
        // 如果key存在,返回false
        boolean isIn = s.add("apple");
        s.add("orange");
        s.add("peach");
        s.add("banana");
        System.out.println(s.size()); 		
        System.out.println(s);
        isIn = s.add("apple");
        // add(key): key如果是空,抛出空指针异常
        //s.add(null);
        // contains(key): 如果key存在,返回true,否则返回false
        System.out.println(s.contains("apple"));
        System.out.println(s.contains("watermelen"));
        // remove(key): key存在,删除成功返回true
        // key不存在,删除失败返回false
        // key为空,抛出空指针异常
        s.remove("apple");
        System.out.println(s);
        s.remove("watermelen");
        System.out.println(s);
        // 抛出空指针异常
        // s.remove(null);
        Iterator it = s.iterator();
        while(it.hasNext()){
            System.out.print(it.next() + " ");
        }
        System.out.println();
    }
}



HashSet方法示例
package com.yty;

import java.util.*;


public class Test {
    public static void main(String[] args) {
        Set s = new HashSet<>();
        // add(key): 如果key不存在,则插入,返回ture
        // 如果key存在,返回false
        boolean isIn = s.add("apple");
        s.add("orange");
        s.add("peach");
        s.add("banana");
        System.out.println(s.size());
        System.out.println(s);
        isIn = s.add("apple");
        // add(key): key如果是空,抛出空指针异常
        //s.add(null);
        // contains(key): 如果key存在,返回true,否则返回false
        System.out.println(s.contains("apple"));
        System.out.println(s.contains("watermelen"));
        // remove(key): key存在,删除成功返回true
        // key不存在,删除失败返回false
        // key为空,抛出空指针异常
        s.remove("apple");
        System.out.println(s);
        s.remove("watermelen");
        System.out.println(s);
        // 抛出空指针异常
        // s.remove(null);
        Iterator it = s.iterator();
        while(it.hasNext()){
            System.out.print(it.next() + " ");
        }
        System.out.println();
    }
}
		


List 常用方法说明
方法解释
boolean add(E e)尾插 e
void add(int index, E element)将 e 插入到 index 位置
boolean addAll(Collection c)尾插 c 中的元素
E remove(int index)删除 index 位置元素
boolean remove(Object o)删除遇到的第一个 o
E get(int index)获取下标 index 位置元素
E set(int index, E element)将下标 index 位置元素设置为 element
void clear()清空
boolean contains(Object o)判断 o 是否在线性表中
int indexOf(Object o)返回第一个 o 所在下标
int lastIndexOf(Object o)返回最后一个 o 的下标
List subList(int fromIndex, int toIndex)截取部分 list
1.ArrayList(顺序表)
方法解释
ArrayList()无参构造
ArrayList(Collection c)利用其它Collection构建ArrayList
ArrayList(int initialCapacity)指定顺序表初始容量
2.linkedList(链表)
方法解释
linkedList()无参构造

方法示例:

package com.yty;

import java.util.ArrayList;
import java.util.linkedList;
import java.util.List;


public class Test {
    public static void main(String[] args) {
        List courses = new ArrayList<>();
        courses.add("C 语言");
        courses.add("Java SE");
        courses.add("Java Web");
        courses.add("Java EE");
        // 和数组一样,允许添加重复元素
        courses.add("C 语言");
        // 按照添加顺序打印
        System.out.println(courses);
        // 类似数组下标的方式访问
        System.out.println(courses.get(0));
        System.out.println(courses);
        courses.set(0, "计算机基础");
        System.out.println(courses);
        // 截取部分 [1, 3)
        List subCourses = courses.subList(1, 3);
        System.out.println(subCourses);
        // 重新构造
        List courses2 = new ArrayList<>(courses);
        System.out.println(courses2);
        List courses3 = new linkedList<>(courses);
        System.out.println(courses3);
        // 引用的转换
        ArrayList courses4 = (ArrayList)courses2;
        System.out.println(courses4);
        // linkedList c = (linkedList)course2; 错误的类型
        linkedList courses5 = (linkedList)courses3;
        System.out.println(courses5);
        // ArrayList c = (ArrayList)course3; 错误的类型
	

		

    }
}


Map常用方法说明
方法签名说明
V get(Object k)根据指定的 k 查找对应的 v
V getOrDefault(Object k, V defaultValue)根据指定的 k 查找对应的 v,没有找到用默认值代替
V put(K key, V value)将指定的 k-v 放入 Map
boolean containsKey(Object key)判断是否包含 key
boolean containsValue(Object value)判断是否包含 value
Set> entrySet()将所有键值对返回
boolean isEmpty()判断是否为空
int size()返回键值对的数量

方法实例:

import java.util.Map;
import java.util.HashMap;
public class Demo {
	public static void main(String[] args) {
		Map map = new HashMap<>();
		System.out.println(map.size());	
		System.out.println(map.isEmpty());
		System.out.println(map.get("作者"));
		System.out.println(map.getOrDefault("作者", "佚名"));
		System.out.println(map.containsKey("作者"));
		System.out.println(map.containsValue("佚名"));
		map.put("作者", "鲁迅");
		map.put("标题", "狂人日记");
		map.put("发表时间", "1918年");
		System.out.println(map.size());
		System.out.println(map.isEmpty());
		System.out.println(map.get("作者"));
		System.out.println(map.getOrDefault("作者", "佚名"));
		System.out.println(map.containsKey("作者"));
		System.out.println(map.containsValue("佚名"));
		for (Map.Entry entry : map.entrySet()) {
			System.out.println(entry.getKey());
			System.out.println(entry.getValue());
		}
	}
}
		
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/354244.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号