在原来文章介绍了有关Java程序开发的详细步骤:

这节,来介绍下集合ArrayList的使用方法,回到上一篇文章的,我们一样跟着脚步来学习使用它,首先通过JDK API手册找到该类:

尖括号检查正则 java java的尖括号_java

ArrayList类有别于数组,数组的长度不能改变,除非通过间接手段进行改变,ArrayList的长度可以改变。

ArrayList 中 尖括号 叫泛型

泛型:也就是装在集合当中的所有元素,全都是统一的某种类型。

注意:泛型只能是引用类型,不能是基本类型(byte int short double long char boolean)

对于ArrayList集合来说,直接打印得到的不是地址值,而是内容,如果内容是空,得到的是中括号:[]

接下来我们来看下它的使用方法,首先看到API手册关于ArrayList的构造方法:

尖括号检查正则 java java的尖括号_i++_02

根据摘要信息,我们可以知道如何来创建它:

ArrayList list = new ArrayList<>();

这句话的意思是:创建了一个ArrayList集合,集合的名称是list,里面装的是String

从JDK1.7+开始,右侧的尖括号内部可以不写内容,但是<>本身还是要写的。

ArrayList支持的方法:

尖括号检查正则 java java的尖括号_i++_03

常用ArrayList的操作方法主要有:

public boolean add(E e);      向集合当中添加元素,参数的类型和泛型一致

public E get(int index);         从集合当中获取元素,参数是索引编号,返回值就是对应位置的元素,索引编号从0开始

public E remove(int index);  从集合当中删除元素,参数是索引编号,返回值就是被删除的掉的元素

public int size();                   获取集合的尺寸长度,返回值就是集合中包含的元素个数

其中方法的返回类型为E,E就是泛型,之前创建的类型是什么类型,E就是什么类型。

如果希望向集合ArrayList当中存储基本类型数据,必须使用基本类型对应的包装类,主要有:

基本类型  包装类(引用类型,包装类都位于java.Lang包下)

byte         Byte

short        Short

int            Integer         [特殊]

long         Long

double     Double

char         Character    [特殊]

boolean   Boolean

从JDK1.5+开始,支持自动装箱、自动拆箱

自动装箱:基本类型--> 包装类型        ep: 从int ---> Integer

自动拆箱:包装类型--> 基本类型        ep: 从Integer ---> int

下面我们来看下具体的应用实例:

1、生成6个1-33之间的随机整数,并遍历集合。

package app_one;
import java.util.*;
import java.lang.*;
public class hello {
public static void main(String[] args) {
Random r = new Random();
ArrayList list = new ArrayList<>();
//生成6个
for(int i = 0 ; i < 6 ; i++)
{
//生成1-33之间的随机整数
int number = r.nextInt(33) + 1 ;
//添加到集合
list.add(number);
}
//遍历集合
for(int i = 0 ; i < list.size(); i++)
{
System.out.println(list.get(i));
}
}
}

运行结果:

尖括号检查正则 java java的尖括号_尖括号检查正则 java_04

2、定义以指定格式打印集合的方法(ArrayList类型作为参数),使用{}扩起集合,使用@分隔每个元素。格式参照

{元素@元素@元素}。
package app_one;
import java.util.ArrayList;
public class hello {
public static void main(String[] args)
{
ArrayList list = new ArrayList<>();
list.add("张三");
list.add("李四");
list.add("王五");
list.add("鬼见愁");
Print_ArrayList_method(list);
}
public static void Print_ArrayList_method(ArrayList list)
{
System.out.print("{");
for(int i = 0; i < list.size() ; i++)
{
System.out.print(list.get(i));
if(i != list.size() - 1)
System.out.print("@");
}
System.out.print("}");
}
}

运行结果:

尖括号检查正则 java java的尖括号_System_05

3、用一个大集合存入20个随机数字,范围是1-100之间,然后筛选其中的偶数元素,放到小集合中,要求使用自定义方法来实现筛选,最后遍历出来。

package app_one;
import java.util.ArrayList;
import java.util.Random;
public class hello {
public static void main(String[] args)
{
ArrayList biglist = new ArrayList<>();
Random r = new Random();
for(int i = 0 ; i < 20 ; i++)
{
int randnum = r.nextInt(100) + 1 ;
biglist.add(randnum);
}
ArrayList smalllist = small_list(biglist);
for(int i = 0 ; i < smalllist.size() ; i++)
{
System.out.println(smalllist.get(i));
}
System.out.println("偶数总共有:"+smalllist.size()+"个");
}
public static ArrayList small_list(ArrayList list)
{
ArrayList __list = new ArrayList<>() ;
for(int i = 0 ; i < list.size() ; i++)
{
int number = list.get(i);
//判断是否为偶数元素
if(number % 2 == 0)
{
System.out.println(number);
//往新的ArraryList中添加偶数数据
__list.add(number);
}
}
return __list ;
}
}

运行结果:

尖括号检查正则 java java的尖括号_java 集合方法应用_06