集合、collection、list的方法

简介: 集合、collection、list的方法

集合、collection、list的方法


集合

弥补了数组的缺点

存储一堆数据时,首选集合

Collection

List 列表 存储的数据有序,且可以重复

ArrayList 底层使用的数组,查询快,增删慢 (面试:ArrayList如何扩容?)

Set 存储的数据无序,且不可重复

Map 存储的是key-value结构数据

Collection中的方法:

package com.qfedu.collection;
import java.util.ArrayList;
import java.util.Collection;
public class App {
  public static void main(String[] args) {
    // TODO Auto-generated method stub
    Collection collection = new ArrayList();
    // 向集合中添加元素
    collection.add("英雄联盟");
    collection.add("穿越火线");
    System.out.println(collection);
    // 删除指定的元素
    collection.remove("穿越火线");
    System.out.println(collection);
    Collection temp = new ArrayList();
    temp.add("梦幻西游");
    temp.add("王者荣耀");
    // 将一个集合中数据添加到另一个集合中
    collection.addAll(temp);
    System.out.println(collection);
    // 删除指定的集合
//    collection.removeAll(temp);
//    System.out.println(collection);
    // 获取集合中元素的个数
    System.out.println(collection.size());
    // 判断集合中是否有元素
    System.out.println(collection.isEmpty());
    // 判断是否包含指定的对象
    System.out.println(collection.contains("英雄联盟123"));
    // 判断是否包含集合中的所有元素
    System.out.println(collection.containsAll(temp));
    // 清空集合
    collection.clear();
    System.out.println(collection);
  }
}

List中方法:

package com.qfedu.list;
import java.util.ArrayList;
import java.util.List;
public class App {
  public static void main(String[] args) {
    // TODO Auto-generated method stub
    List list = new ArrayList();
    list.add("Java");
    list.add("python");
    list.add("iOS");
    // 在指定索引处插入元素, 其他元素下移
    list.add(1, "AI");
    System.out.println(list);
    // 设置指定索引处的元素
    list.set(2, "UI");
    System.out.println(list);
    // 获取指定索引处的元素
    System.out.println(list.get(0));
    list.add("AI");
    System.out.println(list);
    // 获取指定元素的索引 如果没有找到,返回-1
    System.out.println(list.indexOf("AI"));
    System.out.println(list.lastIndexOf("AI123"));
    // 根据开始索引、结束索引,进行list集合的截取, 不包含结束索引处的元素
    List subList = list.subList(1, 3);
    System.out.println(subList);
    // 添加不同类型的元素
    list.add(100);
    list.add(12.3);
    System.out.println(list);
    Object item = list.get(0);
    // 强制类型转换
    String str = (String)item;
    System.out.println(str.length());
    // 理论上,集合中可以存储不同类型的数据,实际开发是,存的都是相同类型的数据
    // java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String
//    Object object = list.get(5);
//    String str2 = (String)object;
//    System.out.println(str2.length());
    // 泛型    针对集合,在<>指定需要存储的数据类型,<>中使用的数据类型是引用类型
    List<String> list2 = new ArrayList<String>();
    list2.add("haha");
    // list2.add(10); 语法上报错
    // 取值的时候也不需要进行强制类型转换
    String string = list2.get(0);
    System.out.println(string);
  }
}
相关文章
|
2月前
|
存储 Java 索引
(Python基础)新时代语言!一起学习Python吧!(二):字符编码由来;Python字符串、字符串格式化;list集合和tuple元组区别
字符编码 我们要清楚,计算机最开始的表达都是由二进制而来 我们要想通过二进制来表示我们熟知的字符看看以下的变化 例如: 1 的二进制编码为 0000 0001 我们通过A这个字符,让其在计算机内部存储(现如今,A 字符在地址通常表示为65) 现在拿A举例: 在计算机内部 A字符,它本身表示为 65这个数,在计算机底层会转为二进制码 也意味着A字符在底层表示为 1000001 通过这样的字符表示进行转换,逐步发展为拥有127个字符的编码存储到计算机中,这个编码表也被称为ASCII编码。 但随时代变迁,ASCII编码逐渐暴露短板,全球有上百种语言,光是ASCII编码并不能够满足需求
182 4
|
5月前
|
并行计算 Java API
Java List 集合结合 Java 17 新特性与现代开发实践的深度解析及实战指南 Java List 集合
本文深入解析Java 17中List集合的现代用法,结合函数式编程、Stream API、密封类、模式匹配等新特性,通过实操案例讲解数据处理、并行计算、响应式编程等场景下的高级应用,帮助开发者提升集合操作效率与代码质量。
257 1
|
5月前
|
存储 安全 Java
Java 学习路线 35 掌握 List 集合从入门到精通的 List 集合核心知识
本文详细解析Java中List集合的原理、常用实现类(如ArrayList、LinkedList)、核心方法及遍历方式,并结合数据去重、排序等实际应用场景,帮助开发者掌握List在不同业务场景下的高效使用,提升Java编程能力。
414 0
|
算法
你对Collection中Set、List、Map理解?
你对Collection中Set、List、Map理解?
192 18
你对Collection中Set、List、Map理解?
|
Java 机器人 程序员
从入门到精通:五种 List 遍历方法对比与实战指南
小米是一位热爱分享技术的程序员,本文详细介绍了 Java 中遍历 List 的五种方式:经典 for 循环、增强 for 循环、Iterator 和 ListIterator、Stream API 以及 forEach 方法。每种方式都有其适用场景和优缺点,例如 for 循环适合频繁访问索引,增强 for 循环和 forEach 方法代码简洁,Stream API 适合大数据量操作,ListIterator 支持双向遍历。文章通过生动的小故事和代码示例,帮助读者更好地理解和选择合适的遍历方式。
540 2
|
NoSQL Java Redis
List集合按照由小到大排序或者由大到小排序
List集合按照由小到大排序或者由大到小排序
258 0
|
安全 Java
java线程之List集合并发安全问题及解决方案
java线程之List集合并发安全问题及解决方案
1365 1
|
运维 关系型数据库 Java
PolarDB产品使用问题之使用List或Range分区表时,Java代码是否需要进行改动
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
Java API Apache
怎么在在 Java 中对List进行分区
本文介绍了如何将列表拆分为给定大小的子列表。尽管标准Java集合API未直接支持此功能,但Guava和Apache Commons Collections提供了相关API。
424 1
|
存储 安全 Java
详解Java中集合的List接口实现的ArrayList方法 | Set接口实现的HashSet方法
详解Java中集合的List接口实现的ArrayList方法 | Set接口实现的HashSet方法
284 3

热门文章

最新文章