集合框架之ArrayList集合

ArrayList集合的介绍与应用 


import java.util.ArrayList;

 

public class TextArraryList {
public static void main(String[] args) {
ArrayList <String> list1 =new ArrayList<>();

System.out.println(list1);//[ ]

list1.add("张三");
list1.add("李四");
list1.add("王五");
System.out.println(list1);//[张三, 李四, 王五]

String str1 = list1.get(0);
System.out.println(str1);//张三

String str2 = list1.remove(1);
System.out.println("删除的字符串是: " + str2);
System.out.println(list1);//[张三, 王五]

//ArrayList集合遍历
for (int i = 0; i < list1.size(); i++) {
System.out.println(list1.get(i));
}

ArrayList<Integer> list2 = new ArrayList<>();
list2.add(100);
list2.add(200);
list2.add(300);

//遍历集合
for (int i = 0; i <list2.size(); i++) {
System.out.println(list2.get(i));
    }
  }
}

ArrayList集合的具体写法是ArrayList<E>,E代表泛型,可以是任意一种引用类型,不能是基本类型; 
注意事项:
对于ArrayList集合来说,直接打印得到的不是地址值,而是内容。
如果内容为空,得到的就是空的中括号;[ ]

ArrayList集合的常用方法有:
public boolean add(E e):向集合当中添加元素,参数的类型和泛型一致,返回值代表添加是否成功
注:对于ArrayList集合来说,add添加是一定成功的,所以返回值可用可不用,对于有些集合来说就不一定了。

public E get(int index):从集合当中获取元素,index是索引编号,返回的就是对应位置的元素。

public E remove(int index):从集合当中删除元素,index就是索引编号,返回的就是被删除的元素。

public int size():获取集合的尺寸长度,返回的是集合中元素的个数。

如果要使用基本类型,则需要用到包装类:
基本类型   包装类(引用类型,包装类都位于java.lang包下)
byte     Byte
short      Short
int     Integer
long     Long
float     Float
double      Double
char    Character
boolean    Boolean
其中int和char的需要特别记忆一下。

Java 1.5之后可以自动拆箱装箱,也就是在进行基本数据类型和对应的包装类转换时,系统将自动进行。
自动装箱:基本类型->包装类
自动拆箱:包装类->基本类型

以下是ArrayList集合的简单应用

 

import java.util.ArrayList;
import java.util.Random;
//生成6个1~100之间的随机整数,添加到集合,并遍历输出。
public class text1 {
public static void main(String[] args) {
ArrayList<Integer> list =new ArrayList<>();
Random r =new Random();

for (int i = 0; i < 6; i++) {
int num = r.nextInt(100)+1;
list.add(num);
}
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
    }
  }
}

 

 

//实体对象作为ArrayList集合的类型

import java.util.ArrayList;

public class text2 {
public static void main(String[] args) {
ArrayList<Student> stu =new ArrayList<>();
stu.add(new Student("张三",18,'男'));
stu.add(new Student("李四",20,'男'));
stu.add(new Student("王华",19,'女'));

//集合遍历
for (int i = 0; i < stu.size(); i++) {
Student stu1 = stu.get(i);
System.out.println("我叫: "+stu1.getName()+" 年龄: "+stu1.getAge()+" 性别: "+stu1.getSex());
    }
  }
}
class Student {
private String name;
private int age;
private char sex;

public Student() {
}

public Student(String name, int age, char sex) {
this.name = name;
this.age = age;
this.sex = sex;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}

public char getSex() {
return sex;
}

public void setSex(char sex) {
this.sex = sex;
  }
}

 

import java.util.ArrayList;

//定义以指定格式打印集合的方法(ArrayList类型作为参数),使用{}括起来集合,使用@分隔每一个元素
//格式参照 {元素@元素@元素}
public class text3 {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<>();
list.add("张三");
list.add("李四");
list.add("王五");
list.add("刘六");
System.out.println(list);//[张三, 李四, 王五, 刘六]

printArraryList(list);
}

public static void printArraryList(ArrayList<String> 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.println('}');
} else {
System.out.print('@');
      }
    }
  }
}

 

import java.util.ArrayList;
import java.util.Random;

//将大集合bigList中的偶数放到小集合smallList中,并遍历。
public class text4 {
public static void main(String[] args) {
ArrayList<Integer> bigList = new ArrayList<>();
Random r = new Random();
for (int i = 0; i < 20; i++) {
int num = r.nextInt(100)+1;//1~100
bigList.add(num);
}

ArrayList<Integer> smallList = getSmallList(bigList);
System.out.println("有多少个偶数: " + smallList.size());
for (int i = 0; i < smallList.size(); i++) {
System.out.println(smallList.get(i));
  }
}
public static ArrayList<Integer> getSmallList(ArrayList<Integer> bigList) {
ArrayList<Integer> smalList = new ArrayList<>();
for (int i = 0; i < bigList.size(); i++) {
int num = bigList.get(i);
if(num % 2 ==0) {
smalList.add(num);
  }
}
return smalList;
  }
}

转载于:https://www.cnblogs.com/LK-SQ/p/11335391.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值