一.集合

概述


package Test;import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
import java.util.regex.Matcher;
import java.util.regex.Pattern;/*** 拓展:正则表达式爬取信息中的内容。(了解)*/
public class Test {public static void main(String[] args){//        有序  可重复   有索引Collection list=new ArrayList();list.add("Java");list.add("Java");list.add("Mybatis");list.add(23);list.add(23);list.add(false);list.add(false);System.out.println(list);//        无序    不重复    无索引Collection list2=new HashSet();list2.add("Java");list2.add("Java");list2.add("Mybaits");list2.add(23);list2.add(23);list2.add(false);list2.add(false);System.out.println(list2);System.out.println("---------------");
//        Collection<String> list2=new ArrayList<String>();Collection<String> list3=new ArrayList<>();list3.add("Java");
//        list3.add(33);list3.add("黑马");//        集合和泛型不支持基本数据类型,只能支持引用数据类型
//        Collection<int> list3=new ArrayList<>();}
}

常用API

package Test;import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;/*** 拓展:正则表达式爬取信息中的内容。(了解)*/
public class Test {public static void main(String[] args){//        HashSet:添加的元素是无序,不重复,无索引Collection<String> list=new ArrayList<>();
//        1.添加元素,添加成功返回truelist.add("java");list.add("HTML");System.out.println(list.add("HTML"));list.add("MySQL");list.add("Java");System.out.println(list.add("黑马"));System.out.println(list);//[Java,HTML,HTML,MySql,java,黑马]//        2.清空集合的元素
//        list.clear();
//        System.out.println(list);//        3.判断集合是否为空  是空返回true,反之System.out.println(list.isEmpty());//        4.获取集合的大小System.out.println(list.size());//        5.判断集合中是否包含某个元素System.out.println(list.contains("Java"));//trueSystem.out.println(list.contains("java"));//falseSystem.out.println(list);System.out.println(list.remove("Java"));//trueSystem.out.println(list);//        7.把集合转换成数组  [HTML,HTML,MySQL,Java,黑马]Object[] arrs=list.toArray();System.out.println("数组:"+ Arrays.toString(arrs));System.out.println("-------------拓展------------");Collection<String> c1=new ArrayList<>();c1.add("java1");c1.add("java2");Collection<String> c2=new ArrayList<>();c2.add("赵敏");c2.add("殷素素");
//        addAll把c2集合的元素全部倒入到c1中去c1.addAll(c2);System.out.println(c1);System.out.println(c2);}
}

迭代器遍历


package Test;import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;public class Test2 {public static void main(String[] args) {Collection<String> lists=new ArrayList<>();lists.add("赵敏");lists.add("小昭");lists.add("素素");lists.add("灭绝");
//        [赵敏,小昭,素素,灭绝]//       1.得到当前集合的迭代器对象Iterator<String> it=lists.iterator();
//        String ele=it.next();
//        System.out.println(ele);
//        System.out.println(it.next());
//        System.out.println(it.next());
//        System.out.println(it.next());
//        System.out.println(it.next());//NoSuchElementException 出现无此元素异常的错误//        2.定义while循环while (it.hasNext()){String ele=it.next();System.out.println(ele);}System.out.println("----------------------");}
}

foreach遍历

package Test;import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Iterator;public class Test2 {public static void main(String[] args) {Collection<String> lists=new ArrayList<>();lists.add("赵敏");lists.add("小昭");lists.add("殷素素");lists.add("周芷若");System.out.println(lists);//[赵敏,小昭,殷素素,周芷若]
//        elefor (String ele:lists){System.out.println(ele);}System.out.println("--------------");double[] scores={100,99.5,59.5};for (double score:scores){System.out.println(score);
//            if (score==59.5){//                score=100.0;//修改无意义,不会影响数组的元素值
//            }}System.out.println(Arrays.toString(scores));}
}

package Test;import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Iterator;
import java.util.function.Consumer;public class Test2 {public static void main(String[] args) {Collection<String> lists=new ArrayList<>();lists.add("赵敏");lists.add("小昭");lists.add("殷素素");lists.add("周芷若");System.out.println(lists);//[赵敏,小昭,殷素素,周芷若]
//          t
//          s
//        lists.forEach(new Consumer<String>() {//            @Override
//            public void accept(String s) {//                System.out.println(s);
//            }
//        });lists.forEach( s->System.out.println(s));
//      还有一种遍历方式lists.forEach(System.out::println);}
}

存储自定义类型的对象

TestDemo

package Test;import java.util.ArrayList;
import java.util.Collection;public class TestDemo {public static void main(String[] args) {//    1.定义一个电影类
//    2.定义一个集合对象存储3部电影对象Collection<Movie> movies = new ArrayList<>();movies.add(new Movie("《你好,李焕英》",9.5,"张小飞,贾玲,沈腾,陈赫"));movies.add(new Movie("《唐人街探案》",8.5,"王宝强,刘浩然,美女"));movies.add(new Movie("《刺杀小说家》",9.5,"雷佳音,杨幂"));System.out.println(movies);//        3.遍历集合容器中的每个电影对象for (Movie movie : movies){System.out.println("片名:"+movie.getName());System.out.println("得分:"+movie.getScore());System.out.println("主演:"+movie.getActor());}}
}

Movie.java

package Test;public class Movie {private String name;private double score;private String actor;public Movie() {}public Movie(String name, double score, String actor) {this.name = name;this.score = score;this.actor = actor;}public String getName() {return name;}public void setName(String name) {this.name = name;}public double getScore() {return score;}public void setScore(double score) {this.score = score;}public String getActor() {return actor;}public void setActor(String actor) {this.actor = actor;}@Overridepublic String toString() {return "Movie{" +"name='" + name + '\'' +", score=" + score +", actor='" + actor + '\'' +'}';}
}

Java:基础 :集合和迭代器相关推荐

  1. java基础—集合框架

    java基础-集合框架 JDK1.2开始引入了集合框架的概念,以弥补java中只有数组这种容器的单一问题,这些框架多数由接口构成,另外也包含了一些对于接口实现的类,其中这些接口的最上层接口为java. ...

  2. Java基础---集合的概述---list、set、map、泛型、collections

    集合的概述 单列集合的体系: Collection 单列集合的顶层接口 List Collection的子接口,增加了一些特有的方法,有序 可以重复 有索引 ArrayList 底层采用的数组结构实现 ...

  3. JAVA基础---集合(一)--集合框架概述

    为什么用集合如何合理用集合,以及如何实现的和他们的实现原理,如果搞清了对于之后学习其他知识和开发是很有大帮助性的. 什么是集合框架? 集合框架是表示和操作集合的统一体系结构.所有集合框架都包含以下内容 ...

  4. (阿里offer)春招知识点总结1:java基础+集合+并发+jvm+ssm

    写在前面:大量总结不是系统的总结,而是作者本人根据自己情况总结的,许多我很清楚的地方就不在提及,大量源码也均未提及,尤其是框架的总结提及很浅.仅作为自己短期技术栈的一个总结,只作为参考,不是一定正确的 ...

  5. Java基础—集合2Set接口和Map接口

    第一讲 Set 一 概述 Set:1. 元素存储无下标,所以元素是无序(存入和取出的顺序不一定一致) 2. 元素不可以重复 |--HashSet:底层数据结构是哈希表.线程不同步. 保证元素唯一性的原 ...

  6. JAVA基础+集合+多线程+JVM

    1. Java 基础 1.1. 面向对象和面向过程的区别 面向过程性能比面向对象高. 因为类调用时需要实例化,开销比较大,比较消耗资源,所以当性能是最重要的考量因素的时候 等一般采用面向过程开发.但是 ...

  7. Java基础—集合框架(三)

    一Map集合 二Map扩展知识 集合框架(三) 一.Map集合 1.概述 Map集合用于存储键值对,且它保证键的唯一性,并且每个键最多只能映射一个值.Map集合是Set集合的底层实现,其和Collec ...

  8. 小东吖 之 java Collection集合和迭代器

    一.Collection集合 数组: 存储同一种数据类型的集合容器. 数组的特点: 1. 只能存储相同数据类型的数据 2. 一旦给定了长度,数组长度被固定了,不能改变 3. 数组中的元素与元素之间的内 ...

  9. java基础集合操作工具类Collections简述(java集合四)

    对集合中的元素进行排序 Collections中的sort方法使用 public class ListDemo {public static void main(String[] args) {Lis ...

  10. java基础----集合操作---实例----List集合的初始化

    文章内容:最近使用LeapMotion进行软件开发时,使用到了java API---->List集合,使用过程中遇到了一些小bug,特写此博客记录相关心得. 程序编写背景:使用leapMotio ...

最新文章

  1. 单商户商城与多商户商城的区别
  2. 数字化转型战略中不可忽视“软因素”
  3. 后端技术:Java编程中忽略这些细节,Bug肯定少不了
  4. 漫步线性代数六——逆和转置
  5. Java 8 新特性:Comparator.naturalOrder | 自然排序
  6. canvas 绘制直线 并选中_javascript自学记录:canvas绘图
  7. 从2000年到2019年
  8. 【操作系统/OS笔记14】经典同步问题:读者-写者问题、哲学家就餐问题
  9. anno arm移植Qt环境后,编译正常,程序无法正常启动问题的记录
  10. 万年历c语言代码单链表,万年历的C语言实现
  11. matlab 无刷电机,无刷直流电机的matlab仿真
  12. 中心极限定理 central limit theorem
  13. 微软企业邮箱邮箱服务器地址,微软Outlook添加网易企业邮箱设置步骤
  14. mybatis 自定义拦截器
  15. JavaScript——jQuery速查手册
  16. cent os 主题安装
  17. Markdown简单操作
  18. Android Verity Boot(AVB)初探
  19. android.os.FileUriExposedException: file:///storage/emulated/0/myxmpp/154094
  20. 电脑通过android手机上网 .

热门文章

  1. 浅谈TPM设备管理系统、推行要素和目的
  2. 启发式搜索算法 - 以A*为中心来说明启发式算法本质是要找有效的heuristic需要满足的性质
  3. 小牛M+怎么样 看过你才知道
  4. 解决“微信与此IPAD不兼容
  5. 警惕nmn 智商税,nmn抗衰老 骗局,另有隐情
  6. 软件测试面试之逻辑篇(一)
  7. mysql 修改max_allowed_packet_Mysql修改max_allowed_packet参数
  8. JavaWEB-Servlet
  9. 熊啸锋:在线生成个人网站,如何建立个人网站教程
  10. 使用python调用微步在线接口实现自动化查询IP情报