Java 数组ArrayList常用语法详解
恶补基础,记录一下数组ArrayList的常用语法
1.导入
importjava.util.ArrayList;
2.定义数组list
ArrayList<类名>list=newArrayList<类名>();不能是基本类型,必须是类
3.获取集合大小
size()
4.存入数据
add(Objectobject);从下标0开始加入
add(intidx,Objectobject);将object插入索引为idx的位置,idx<=list.size();
存进不同的对象要单个new,不能通过改变值后加入数组。(涉及到内存)
5.删除
remove(intidx);删除索引为idx的元素,返回该元素,可以用变量去接收,也可不接收
6.清空
clear();清空数组
7.替换
set(intidx,Objectobject);把object元素和原本索引为idx的元素替换
8.获取指定位置元素
Objectget(intidx);
9.判空
boolisEmpty();一般不用,size()可以用于判空
10.判断是否有某元素
boolcontains(Objectobject);基本不用,可以通过查找元素的索引来解决
11.查找元素的索引
intindexOf(Objectobject);如果元素存在,则返回索引,否则返回-1,通过是不是-1判断元素在不在数组里
12..对数组list排序
导入Collections类;
importjava.util.Collections;
(1)默认自然排序,从小到大
Collections.sort(list);//不可以new出Collections的对象,直接用
(2)自定义排序
导入Comparator类;
importjava.util.Comparator;
创建对象的时候需要实现抽象方法compare(),实现自定义排序
packagemy_acm;
importjava.util.ArrayList;
importjava.util.Collections;
importjava.util.Comparator;//自定义排序
//importjava.lang.Integer;//lang包中的类不用导也能直接用
publicclassMyTest4{
publicstaticvoidmain(String[]args){
ArrayListlist1=newArrayList();
ArrayListlist2=newArrayList();
//ArrayListlist3=newArrayList();//报错,基本数据类型不能
Comparatorcomparator=newComparator(){
publicintcompare(Pointp1,Pointp2){
if(p1.id!=p2.id)
returnp1.id-p2.id;
else
{
if(p1.age!=p2.age)
returnp1.age-p2.age;
else
return0;//不像C++,这里的if-else需要匹配
}
}
};
Pointp1=newPoint();
p1.id=11;p1.age=21;
list1.add(p1);
Pointp2=newPoint();
p2.id=9;p2.age=44;
list1.add(p2);
Pointp3=newPoint();
p3.id=2;p3.age=68;
list1.add(p3);
/**修改变量的值在加到数组里是不可行的,(
p3.id=14;p3.age=23;
list1.add(p3);
*/
for(inti=0;i
输出结果:
i=0id=11age=21
i=1id=9age=44
i=2id=2age=68
按id排序后
i=0id=2age=68
i=1id=9age=44
i=2id=11age=21
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。