zoukankan      html  css  js  c++  java
  • 动态数组

    前言

      如果数组的大小要随时间变化,那么数组操作起来就比较麻烦。

      在C++中,这种情况要用到动态向量Vector。

      而Java中,提供了一种叫做ArrayList的泛型数组结构类型,提供相似的作用。

      其实都是一种东西,只是在使用上面有那么一点区别。

      本文将讲解ArrayList的具体使用方法。

    ArrayList常用方法

      先要做如下说明:

        1. 因为 Java 不支持运算符的重载,所以不支持下标运算符,无法使用[]运算符来存取元素。

        2. ArrayList成员必须是对象类型(泛型不支持基本类型)。也就是int,float这些不能作为成员。如果要使用这些基本类型,必须使用其对象表达方式。(下文会讲解转换技巧)

      // 构造一个空数组列表

      ArrayList <T> ();

      // 设置数组列表指定位置的元素值

      void set (int index, T obj);

      // 获取数组列表指定位置的元素值

      T get (int index);

      // 删除一个元素

      T remove (int index);

      // 往数组列表里添加元素

      boolean add (T obj);

      // 往数组列表的指定位置插入元素

      void add (int index, T obj);

      // 获取当前容量

      int size();

    示例代码

     1 package test;
     2 
     3 import java.util.ArrayList;
     4 
     5 public class Java7Learn {
     6     
     7     public static void main(String[] args){
     8         
     9         // 测试数组
    10         int [] a = {1, 3, 5, 7, 9};
    11         
    12         // 创建ArrayList并赋值
    13         ArrayList<Integer> array = new ArrayList<Integer>();
    14         for (int i:a) {
    15             array.add(i);
    16         }
    17         
    18         // 打印结果
    19         for (int i:array) {
    20             System.out.print(i);
    21             System.out.print(" ");
    22         }
    23         System.out.println();
    24         
    25         // 将第一个元素设置为9
    26         array.set(0, 9);
    27         
    28         // 删除第3个元素
    29         array.remove(2);
    30         
    31         // 再打印结果
    32         for (int i:array) {
    33             System.out.print(i);
    34             System.out.print(" ");
    35         }
    36         System.out.println();
    37     }
    38 }

    运行结果

      

    小结

      没什么多讲的,多用几次就会了。

      

      

  • 相关阅读:
    NOIP201310华容道
    NOIP201110观光公交
    markdown
    【NOIP2016】愤怒的小鸟
    【NOIP2016】组合数问题
    [TJOI2019]唱,跳,rap,篮球(生成函数,组合数学,NTT)
    CF1217E Sum Queries? (线段树)
    CF1178F Short/Long Colorful Strip(DP)
    ZROI 暑期高端峰会2019 总结
    [HNOI2012]集合选数(构造,状态压缩,DP)
  • 原文地址:https://www.cnblogs.com/scut-fm/p/4147427.html
Copyright © 2011-2022 走看看