常用API-增强型for循环、容器ArrayList、collections

简介:

import java.util.ArrayList;  import java.util.Collection;  import java.util.Collections;  import java.util.HashSet;  import java.util.Iterator;    public class fuxi3_arraylist_hashset      public static void main(String[] args)      {          /************************* JDK1.5增强型for循环 *************************************************/          Collection<String> list = new HashSet<String>();// 多态                    list.add("aaa");          list.add("bbb");          list.add("aaa");          list.add("ddd");          list.add("eee");                    System.out.println(list.toString());// 打印结果[aaa, ddd, bbb, eee]                    for (Object obj : list)// 遍历list元素,赋给obj          {              System.out.println(obj);          }                    /************************* collection容器ArrayList *************************************************/          ArrayList<Integer> c1 = new ArrayList<Integer>();          c1.add(10);          c1.add(20);          c1.add(30);          c1.add(20);          c1.add(50);                    int cs = c1.size();// 容器大小          c1.set(05);// 设置容器内指定元素          cs = c1.indexOf(10);// 判断对象的位置          c1.subList(02);// 截取0-1位置的容器元素,生成新的容器          System.out.println(c1);          System.out.println(c1.subList(02));                    Object[] obj = c1.toArray();// 转成数组          for (int i = 0; i < obj.length; i++)          {              System.out.println(obj[i]);          }                    /**           * ArrayList为什么有两个remove方法? remove(int index) 是子类新添加的!           * 如果是父类引用指向子类对象,则找不到子类中新添加的方法。 要想调用子类新添加的方法,需要先转型           */          c1.remove(2);// 移除该位置的元素,原容器长度减1          c1.remove(Integer.valueOf(20));// 移除第一个该值的元素对象,原容器长度减1,返回类型为布尔类型,结果为true          System.out.println(c1);                    int ig = c1.get(0);// 得到位置0的元素          boolean bc = c1.isEmpty();// 是否为空          bc = c1.contains(15);// 是否包含                    c1.clear();// 清空                    /************************* 容器间ArrayList *************************************************/          ArrayList<String> a1 = new ArrayList<String>();          a1.add("aaa");          a1.add("bbb");          a1.add("ccc");          a1.add("ddd");          a1.add("eee");                    ArrayList<String> a2 = new ArrayList<String>();          a2.add("bbb");          a2.add("eee");          a2.add("ddd");                    boolean flag2 = a2.remove("fff");          System.out.println(flag2);// 结果为false                    System.out.println(a1.containsAll(a2));// 是否包含a2所有元素,返回布尔值true          System.out.println(a1.retainAll(a2));// 求交集,返回布尔值true          System.out.println(a1.addAll(a2));// 添加a2所有元素,返回布尔值true          System.out.println(a1.removeAll(a2));// 移除与a2所有元素相同的元素,返回布尔值true                    a1.retainAll(a2);// 求交集,返回布尔值,a1打印结果为:[bbb, ddd, eee]          a1.addAll(a2);// 添加,结果为:[aaa, bbb, ccc, ddd, eee, bbb, ddd]          a1.removeAll(a2);// 移除,结果为:[aaa, ccc]                    System.out.println(a1);                    /************************* 工具类collections *************************************************/          ArrayList<Integer> aa = new ArrayList<Integer>();          aa.add(13);          aa.add(5);          aa.add(10);          aa.add(53);          aa.add(25);          aa.add(18);                    Collections.shuffle(aa);// 将容器内对象重新随机排列          Collections.sort(aa);// 将容器内对象从小到大排序          Collections.reverse(aa);// 将容器内对象倒置排列          Collections.fill(aa, 555);// 用特定的对象初始化整个aa          Collections.swap(aa, 0, aa.size() - 1);// 容器内对象位置对换                    Integer inc = Collections.max(aa);// 获取容器值最大的对象          int ic = Collections.binarySearch(aa, 5);// 二分法查找容器内对象,用之前必须先sort,否则结果返回-1                    System.out.println(ic);                    // /////////////////////////////***复制****/////////////////////////////////////////////          ArrayList<Integer> aa1 = new ArrayList<Integer>();          aa1.add(2);          aa1.add(3);                    ArrayList<Integer> aa2 = new ArrayList<Integer>();          aa2.add(12);          aa2.add(13);          aa2.add(14);                    ArrayList<Integer> aa3 = new ArrayList<Integer>();          aa3.add(15);                    // Collections.copy(aa1, aa2); //将aa2复制到aa1,aa1长度必须大于aa2,否则报错          Collections.copy(aa2, aa3);// 将aa3复制到aa2,长度不够的保留原对象,打印结果:[15, 13, 14]          System.out.println(aa1);          System.out.println(aa2);      }       




本文转自 glblong 51CTO博客,原文链接:http://blog.51cto.com/glblong/1186832,如需转载请自行联系原作者
目录
相关文章
|
存储 算法 Java
容器【双例集合、TreeMap容器的使用、 Iterator接口、Collections工具类】(四)-全面详解(学习总结---从入门到深化)(中)
容器【双例集合、TreeMap容器的使用、 Iterator接口、Collections工具类】(四)-全面详解(学习总结---从入门到深化)
187 0
|
Kubernetes API Docker
k8s教程(pod篇)-容器获取pod信息(Downward API)
k8s教程(pod篇)-容器获取pod信息(Downward API)
2562 0
|
存储 安全 Java
ArrayList的基本操作【集合容器知识回顾 ②】
这篇文章详细介绍了ArrayList的基本操作,包括创建对象、添加和删除元素、获取和更新元素、遍历、判断元素存在性、集合的空值检查、批量操作、转换为数组、截取子集合、查找元素索引、克隆拷贝、清空集合以及容量管理等,同时指出了使用ArrayList时的注意事项,如线程安全性、容量管理、删除元素的性能、遍历时的修改、空值处理和性能优化。
ArrayList的基本操作【集合容器知识回顾 ②】
|
Kubernetes 安全 Cloud Native
云上攻防-云原生篇&Kubernetes&K8s安全&API&Kubelet未授权访问&容器执行
云上攻防-云原生篇&Kubernetes&K8s安全&API&Kubelet未授权访问&容器执行
569 3
|
并行计算 Java API
|
监控 Devops API
构建高效微服务架构:API网关的作用与实践构建高效稳定的云基础设施:DevOps与容器化技术融合实践
【5月更文挑战第28天】 在当今的软件开发领域,微服务架构因其灵活性、可扩展性和容错能力而备受推崇。本文将深入探讨API网关在构建微服务系统中的关键角色,包括它如何促进系统的高可用性、安全性和性能监控。我们将剖析API网关的核心组件,并借助具体实例展示如何实现一个高效的API网关来服务于复杂的微服务环境。 【5月更文挑战第28天】 随着企业数字化转型的深入,传统的IT运维模式已难以满足快速迭代和持续交付的需求。本文聚焦于如何通过融合DevOps理念与容器化技术来构建一个高效、稳定且可扩展的云基础设施。我们将探讨持续集成/持续部署(CI/CD)流程的优化、基于微服务架构的容器化部署以及自动化监
|
Java 数据库连接 API
Java 学习路线:基础知识、数据类型、条件语句、函数、循环、异常处理、数据结构、面向对象编程、包、文件和 API
Java 是一种广泛使用的、面向对象的编程语言,始于1995年,以其跨平台性、安全性和可靠性著称,应用于从移动设备到数据中心的各种场景。基础概念包括变量(如局部、实例和静态变量)、数据类型(原始和非原始)、条件语句(if、else、switch等)、函数、循环、异常处理、数据结构(如数组、链表)和面向对象编程(类、接口、继承等)。深入学习还包括包、内存管理、集合框架、序列化、网络套接字、泛型、流、JVM、垃圾回收和线程。构建工具如Gradle、Maven和Ant简化了开发流程,Web框架如Spring和Spring Boot支持Web应用开发。ORM工具如JPA、Hibernate处理对象与数
391 3
|
存储 Java API
JavaSE——常用API(3/3)-ArrayList入门、ArratList使用、ArrayList综合案例
JavaSE——常用API(3/3)-ArrayList入门、ArratList使用、ArrayList综合案例
205 0
|
存储 安全 Java
Java容器类List、ArrayList、Vector及map、HashTable、HashMap
Java容器类List、ArrayList、Vector及map、HashTable、HashMap
306 0
|
JavaScript 前端开发 API
JavaScript循环遍历常用的7种方法以及常用的数组 API
JavaScript循环遍历常用的7种方法以及常用的数组 API
472 0