• java集合


    集合是Java提供的一种容器,可以用来存储多个数据

    集合与数组的区别:数组长度固定不可变,集合长度可变,集合里面存的元素必须是引用数据类型

    ArrayList集合例子

    ArrayList<Person> list=new ArrayList<Person>();
            list.add(new Person("熊大",20));
            list.add(new Person("熊二",19));
            list.add(new Person("琪琪国王",30));
            //遍历
            for(int i=0;i<list.size();i++){
                System.out.println(list.get(i));
            }

    这个地方添加的20是int类型,为什么还能加进去呢

    原因是jdk1.5之后有了自动装箱的机制,会自动把int类型的元素转化为Integer类型

    集合的继承实现关系

    查询源代码,ArrayList继承了AbstractList类同时实现了List接口,List接口又继承了Collection

    Collection是接口类的最顶层

    public class ArrayList<E> extends AbstractList<E>
    public abstract class AbstractList<E> extends AbstractCollection<E> implements List<E>
    public interface List<E> extends Collection<E>

    Collection接口的常用方法

    add()返回boolean值,确保此Collection包含指定的元素(可以选择某个元素)

    clear()移除Collection中搜友的元素(可以选择某个元素)

    contains()如果Collection中包含用户指定的元素,就返回true

    size()返回Collection中的元素数量

    toArray()返回包含ciCollection中所有元素的数组(把Collection集合转变为数组)

    package com.oracle.demo01;
    
    import java.util.ArrayList;
    import java.util.Collection;
    
    public class aaa {
        public static void main(String[] args) {
            //建立一个Collection集合
            Collection< String> aa=new ArrayList<String>();
            aa.add("aa");
            aa.add("bb");
            aa.add("cc");
            //remove移除cc
            System.out.println(aa.remove("cc"));
            //看看里面有没有bb
            System.out.println(aa.contains("bb"));
            //aa是Collection类的对象,没有get()方法,所以便利的时候
            //需要向下转型成ArrayList类对象
            ArrayList<String> arr=(ArrayList<String>)aa;
            for(int i=0;i<arr.size();i++){
                System.out.print(arr.get(i)+"..");
            }
            //clear方法
            aa.clear();
            for(int i=0;i<arr.size();i++){
                System.out.print(arr.get(i)+"..");
            }
        }
    }

    //转数组
            Object[] obj=aa.toArray();
            for(int i=0;i<obj.length;i++){
                System.out.print(obj[i]+"	");
            }

  • 相关阅读:
    罗马数字转换成整数
    整数转换成罗马数字
    hdu 5050 大数
    hdu 5051 找规律?+大trick
    hdu 5055
    hdu 5054
    hdu 5058 set应用
    hdu 5056 所有字母数都<=k的子串数目
    hdu 5059 简单字符串处理
    hdu 5060 五种情况求圆柱体与球体交
  • 原文地址:https://www.cnblogs.com/mr171733/p/9757152.html
Copyright © 2020-2023  润新知