ArrayList的常用方法
add:增加
@Test
public void test1(){
ArrayList heros=new ArrayList();
for (int i=0;i<=5;i++){
heros.add(new Hero("hero"+i));
}
System.out.println(heros);
//方式二:
//创建要追加的对象 在指定的位置追加对象
Hero hero1=new Hero("盖伦提莫");
heros.add(3,hero1);
System.out.println(heros);
//通过contaios判断对象是否在容器当中
//是同一个对象不是同一名字
System.out.println("虽然一个新的对象名字也叫 hero 1,但是contains的返回是:");
System.out.print(heros.contains(new Hero("hero 1")));
System.out.print("然而对hero1的判断,则返回的是:");
System.out.println(heros.contains(hero1));
}
contains:判断是否存在
get:获取指定位置的对象
@Test
public void test(){
ArrayList heros=new ArrayList();
//初始化5个对象
for (int i=0;i<=5;i++){
heros.add(new Hero("英雄"+i));
}
System.out.println(heros);
Hero hero=new Hero("特殊英雄");
heros.add(hero);
System.out.println(heros);
//获取指定位置的英雄
System.out.println(heros.get(6));}
indexOf:获取对象所处的位置
//指定位置的对象
@Test
public void test3(){
ArrayList heros=new ArrayList();
//初始化5个对象
for(int i=0;i<5;i++){
heros.add(new Hero("英雄"+i));
}
System.out.println("初始化5个英雄是:"+heros);
Hero hero=new Hero("特殊英雄");
heros.add(hero);
System.out.println(heros);
//获取指定英雄的位置
System.out.println(heros.indexOf(hero));
//新英雄 “英雄1”虽然和原集合中的“英雄”相同但是它的位置是:
System.out.println(heros.indexOf(new Hero("英雄 2")));
}
remove:删除
@Test
public void test4(){
ArrayList heros=new ArrayList();
//初始化5个对象
for (int i=0;i<5;i++){
heros.add(new Hero("英雄"+i));
}
System.out.println(heros);
Hero hero=new Hero("特殊英雄");
heros.add(hero);
System.out.println(heros);
//删除指定位置的英雄
System.out.println(heros.remove(3));
System.out.println(heros);
//删除指定对象通过引用
System.out.println(heros.remove(hero));
System.out.println(heros);
}
set:替换
@Test
public void test5(){
ArrayList heros=new ArrayList();
//初始化5个元素
for(int i=0;i<5;i++){
heros.add(new Hero("英雄"+i));
}
System.out.println(heros);
System.out.print("替换指定下标的数据:");
System.out.println(heros.set(2,"提莫"));
System.out.println("替换后的数据是:"+heros);
//集合的大小
System.out.println("heros集合的大小是:"+heros.size());
}
size:大小
@Test
public void test5(){
ArrayList heros=new ArrayList();
//初始化5个元素
for(int i=0;i<5;i++){
heros.add(new Hero("英雄"+i));
}
System.out.println(heros);
System.out.print("替换指定下标的数据:");
System.out.println(heros.set(2,"提莫"));
System.out.println("替换后的数据是:"+heros);
//集合的大小
System.out.println("heros集合的大小是:"+heros.size());
}
toArray :转换为数组
-----------------------------------------------------------
addAll:把另外一个容器的东西都加入进来 和clear:清空
@Test
public void test6(){
ArrayList heros =new ArrayList();
for (int i=0;i<5;i++){
heros.add(new Hero("英雄"+i));
}
System.out.println("heros中的数据:"+heros);
ArrayList arrayList=new ArrayList();
arrayList.add("英雄a");
arrayList.add("英雄b");
arrayList.add("英雄c");
System.out.println("arrayList中的数据:"+arrayList);
//把另外一个容器的所有元素都加进来
heros.addAll(arrayList);
System.out.println("把另一个ArrayList的元素都加入到当前ArrayList:");
System.out.println("ArrayList heros:\t" + heros);
//清空集合中的所有数据
heros.clear();
System.out.println("heros清空后"+heros);
}
判断集合里是否存在一个 name等于 "英雄1"的对象:
//如果就是要判断集合里是否存在一个 name等于 "hero 1"的对象,
@Test
public void test7(){
ArrayList heros=new ArrayList();
//初始化5个对象
for (int i=0;i<5;i++){
heros.add(new Hero("英雄"+i));
}
System.out.println(heros);
String name="英雄1";
//查找heros是否又英雄1
for (int i=0;i<heros.size();i++){
Hero o = (Hero) heros.get(i);
if (name.equals(o.name)){
System.out.printf("找到了%s在heros集合中",name);
break;
}
}
}
完整代码如下:
package assemble;
import org.junit.Test;
import java.lang.reflect.Array;
import java.util.ArrayList;
/**
* Created with IntelliJ IDEA.
* User: 郭金荣
* Date: 2020/3/8 0008
* Time: 17:15
* E-mail:1460595002@qq.com
* 类说明:
*/
public class TestCollection {
@Test
public void test1(){
ArrayList heros=new ArrayList();
for (int i=0;i<=5;i++){
heros.add(new Hero("hero"+i));
}
System.out.println(heros);
//方式二:
//创建要追加的对象 在指定的位置追加对象
Hero hero1=new Hero("盖伦提莫");
heros.add(3,hero1);
System.out.println(heros);
//通过contaios判断对象是否在容器当中
//是同一个对象不是同一名字
System.out.println("虽然一个新的对象名字也叫 hero 1,但是contains的返回是:");
System.out.print(heros.contains(new Hero("hero 1")));
System.out.print("然而对hero1的判断,则返回的是:");
System.out.println(heros.contains(hero1));
}
//获取指定对象的位置
@Test
public void test(){
ArrayList heros=new ArrayList();
//初始化5个对象
for (int i=0;i<=5;i++){
heros.add(new Hero("英雄"+i));
}
System.out.println(heros);
Hero hero=new Hero("特殊英雄");
heros.add(hero);
System.out.println(heros);
//获取指定位置的英雄
System.out.println(heros.get(6));
}
//指定位置的对象
@Test
public void test3(){
ArrayList heros=new ArrayList();
//初始化5个对象
for(int i=0;i<5;i++){
heros.add(new Hero("英雄"+i));
}
System.out.println("初始化5个英雄是:"+heros);
Hero hero=new Hero("特殊英雄");
heros.add(hero);
System.out.println(heros);
//获取指定英雄的位置
System.out.println(heros.indexOf(hero));
//新英雄 “英雄1”虽然和原集合中的“英雄”相同但是它的位置是:
System.out.println(heros.indexOf(new Hero("英雄 2")));
}
@Test
public void test4(){
ArrayList heros=new ArrayList();
//初始化5个对象
for (int i=0;i<5;i++){
heros.add(new Hero("英雄"+i));
}
System.out.println(heros);
Hero hero=new Hero("特殊英雄");
heros.add(hero);
System.out.println(heros);
//删除指定位置的英雄
System.out.println(heros.remove(3));
System.out.println(heros);
//删除指定对象通过引用
System.out.println(heros.remove(hero));
System.out.println(heros);
}
@Test
public void test5(){
ArrayList heros=new ArrayList();
//初始化5个元素
for(int i=0;i<5;i++){
heros.add(new Hero("英雄"+i));
}
System.out.println(heros);
System.out.print("替换指定下标的数据:");
System.out.println(heros.set(2,"提莫"));
System.out.println("替换后的数据是:"+heros);
//集合的大小
System.out.println("heros集合的大小是:"+heros.size());
}
@Test
public void test6(){
ArrayList heros =new ArrayList();
for (int i=0;i<5;i++){
heros.add(new Hero("英雄"+i));
}
System.out.println("heros中的数据:"+heros);
ArrayList arrayList=new ArrayList();
arrayList.add("英雄a");
arrayList.add("英雄b");
arrayList.add("英雄c");
System.out.println("arrayList中的数据:"+arrayList);
//把另外一个容器的所有元素都加进来
heros.addAll(arrayList);
System.out.println("把另一个ArrayList的元素都加入到当前ArrayList:");
System.out.println("ArrayList heros:\t" + heros);
//清空集合中的所有数据
heros.clear();
System.out.println("heros清空后"+heros);
}
//如果就是要判断集合里是否存在一个 name等于 "hero 1"的对象,
@Test
public void test7(){
ArrayList heros=new ArrayList();
//初始化5个对象
for (int i=0;i<5;i++){
heros.add(new Hero("英雄"+i));
}
System.out.println(heros);
String name="英雄1";
//查找heros是否又英雄1
for (int i=0;i<heros.size();i++){
Hero o = (Hero) heros.get(i);
if (name.equals(o.name)){
System.out.printf("找到了%s在heros集合中",name);
break;
}
}
}
}
来源:https://www.cnblogs.com/jinronga/p/12444770.html