zoukankan      html  css  js  c++  java
  • Java ArrayList


    章节


    Java ArrayList

    ArrayList类是一个大小可变的数组类,包含在java.util包中。

    Java中,内置数组和ArrayList的区别在于,内置数组的大小不能改变(如果想在数组中添加或删除元素,必须创建一个新数组),而ArrayList中,元素可以添加和删除。语法也略有不同:

    示例

    创建ArrayList对象cars

    import java.util.ArrayList; // 导入ArrayList类
    
    ArrayList<String> cars = new ArrayList<String>(); // 创建一个ArrayList对象
    

    如果你不知道“包”是什么,请参考我们的Java包教程

    添加项目

    ArrayList类有许多方法。要向ArrayList添加元素,可以使用add()方法:

    示例

    import java.util.ArrayList;
    
    public class MyClass { 
      public static void main(String[] args) { 
        ArrayList<String> cars = new ArrayList<String>();
        cars.add("Volvo");
        cars.add("BMW");
        cars.add("Ford");
        cars.add("Mazda");
        System.out.println(cars);
      } 
    }
    

    访问一个项目

    要访问ArrayList中的元素,使用get()方法,传入元素的索引号:

    示例

    cars.get(0);
    

    记住: 数组索引以0开头: [0]是第一个元素,[1]是第二个元素,等等。

    修改一个项目

    要修改一个元素,使用set()方法,传入元素的索引号:

    示例

    cars.set(0, "Opel");
    

    删除一个项目

    要删除一个元素,使用remove()方法,传入元素的索引号:

    示例

    cars.remove(0);
    

    要删除ArrayList中的所有元素,使用clear()方法:

    示例

    cars.clear();
    

    ArrayList大小

    要知道一个ArrayList有多少个元素,可以使用size()方法:

    示例

    cars.size();
    

    遍历ArrayList

    可使用for循环遍历ArrayList的元素,使用size()方法指定循环次数:

    示例

    public class MyClass { 
      public static void main(String[] args) { 
        ArrayList<String> cars = new ArrayList<String>();
        cars.add("Volvo");
        cars.add("BMW");
        cars.add("Ford");
        cars.add("Mazda");
        for (int i = 0; i < cars.size(); i++) {
          System.out.println(cars.get(i));
        }
      } 
    }
    

    也可以使用for-each遍历ArrayList:

    示例

    public class MyClass { 
      public static void main(String[] args) { 
        ArrayList<String> cars = new ArrayList<String>();
        cars.add("Volvo");
        cars.add("BMW");
        cars.add("Ford");
        cars.add("Mazda");
        for (String i : cars) {
          System.out.println(i);
        }
      } 
    }
    

    其他类型

    ArrayList中的元素实际上是对象。在上面的例子中,我们创建了类型为“String”的元素(对象)。记住,Java中的字符串是对象(而不是基本类型)。

    要使用其他类型,例如int,必须指定一个等效的包装类: Integer类,其他基本类型对应的包装类有: Boolean (boolean),Character (char), Double (double),等等:

    示例

    创建一个ArrayList来存储数字(添加Integer类型的元素):

    import java.util.ArrayList;
    
    public class MyClass { 
      public static void main(String[] args) { 
        ArrayList<Integer> myNumbers = new ArrayList<Integer>();
        myNumbers.add(10);
        myNumbers.add(15);
        myNumbers.add(20);
        myNumbers.add(25);
        for (int i : myNumbers) {
          System.out.println(i);
        }
      } 
    }
    

    数组排序

    java.util包中,另一个有用的类是Collections类,它包含了sort()方法,可以对列表按字母或数字顺序排序:

    示例

    字符串数组排序:

    import java.util.ArrayList;
    import java.util.Collections;  // 导入Collections类
    
    public class MyClass { 
      public static void main(String[] args) { 
        ArrayList<String> cars = new ArrayList<String>();
        cars.add("Volvo");
        cars.add("BMW");
        cars.add("Ford");
        cars.add("Mazda");
    
        Collections.sort(cars);  // cars数组排序 
    
        for (String i : cars) {
          System.out.println(i);
        }
      } 
    }
    

    示例

    整数数组排序:

    import java.util.ArrayList;
    import java.util.Collections;  // 导入Collections类
    
    public class MyClass { 
      public static void main(String[] args) { 
        ArrayList<Integer> myNumbers = new ArrayList<Integer>();
        myNumbers.add(33);
        myNumbers.add(15);
        myNumbers.add(20);
        myNumbers.add(34);
        myNumbers.add(8);
        myNumbers.add(12);
    
        Collections.sort(myNumbers);  // myNumbers数组排序 
    
        for (int i : myNumbers) {
          System.out.println(i);
        }
      } 
    }
    
  • 相关阅读:
    C#static
    Sql中CHARINDEX用法
    分分钟用上C#中的委托和事件
    为什么使用抽象类?有什么好处?
    【NOIP】普及组2009 细胞分裂
    【VIJOS】P1512 SuperBrother打鼹鼠
    【NOIP】提高组2014
    @NOIP2018
    @NOIP2018
    @NOIP2018
  • 原文地址:https://www.cnblogs.com/jinbuqi/p/11731220.html
Copyright © 2011-2022 走看看