java学习day08 集合

时间:2022-06-13
本文章向大家介绍java学习day08 集合,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

2018.6.12

1.正则表达式

 (1)System.out.println("18235195192".matches("^1([3,5,7,8][0-9]|5[189]|8[6789])[0-9]{8}$"));
  (2)   String rex = "[1-9][0-9]{4,14}";
    Pattern p = Pattern.compile(rex);  //生产规则
    Matcher m = p.matcher(qq);          //进行匹配
    return m.find();
   (3)  String rex = "[1-9]{3}";
    Pattern p = Pattern.compile(rex);
    Matcher m = p.matcher(qq);
    String str ="";
    while(m.find()) {
        str = m.group();
        System.out.println(str);
    }
    return str;

2.集合 数组:使用索引值存数组,利用数组的特点来操作数据,遍历。 数组中可以存储基本数据类型,集合只能存储对象。

ArrayList 集合 不明确数据结构, 底层数据结构是数组,查询快,增删慢

     Collection c1 = new ArrayList();
    c1.add(1);
    c1.add(2);
    Iterator i = c1.iterator();
    while(i.hasNext())
    System.out.println(i.next());

        c.add(12);
    c.remove(12);   //清除某一个元素
    c.addAll(c2);   //将一个集合添加到集合中
    c.clear();      //清除集合中的所有数据
        c.removeAll(c2)   //会清除所有出现在c2中的元素
        c.retainAll(c2)   //取两个集合的交集,并将结果赋给调用者

        Object[] array = c.toArray();//将集合转换成数组

3.List 有序 可重复

 get(int index)

   list.add(list.size(),12);
   list.set(int val,Object o);
   for(int i =0;i<list.size();i++) {
    System.out.println(list.get(i));
        }
   while(i.hasNext())
    System.out.print(i.next());  

如何去除List中重复的数据? 1 遍历 获取每个元素 2.新的集合,添加没有的元素。


4.LinkedList类 底层数据结构是链表,查询慢,增删快 线程

addFirst(E e)及addLast(E e)
   E getFirst()及getLast()
   E removeFirst()及public E removeLast()

5.泛型 用于控制集合的数据类型 保证数据的安全性

 List<User> list = new ArrayList<User>();
泛型通配符<?>
任意类型,如果没有明确,那么就是Object以及任意的Java类
? extends E
向下限定,E及其子类
? super E
向上限定,E及其父类