javaarraylistjava中arraylist集合

javaarraylist  时间:2021-09-05  阅读:()

Java中List和ArrayList的区别

List是一个接口,而ListArray是一个类。

ListArray继承并实现了List。

所以List不能被构造,但可以向上面那样为List创建一个引用,而ListArray就可以被构造。

List list; //正确 list=null; List list=new List(); // 是错误的用法 List list = new ArrayList();这句创建了一个ArrayList的对象后把上溯到了List。

此时它是一个List对象了,有些ArrayList有但是List没有的属性和方法,它就不能再用了。

而ArrayList list=new ArrayList();创建一对象则保留了ArrayList的所有属性。

这是一个例子: import java.util.*; public class TestList{ public static void main(String[] args){ List list = new ArrayList(); ArrayList arrayList = new ArrayList(); list.trimToSize(); //错误,没有该方法。

arrayList.trimToSize(); //ArrayList里有该方法。

} } 编译一下就知道结果了。

如果这个样子: List a=new ArrayList(); 则a拥有List与ArrayList的所有属性和方法,不会减少 如果List与ArrayList中有相同的属性(如int i),有相同的方法(如void f()), 则a.i是调用了List中的i a.f()是调用了ArrayList中的f(); --------------------------------------------------------------- 问题的关键: 为什么要用 List list = new ArrayList() ,而不用 ArrayList alist = new ArrayList()呢? 问题就在于List有多个实现类,现在你用的是ArrayList,也许哪一天你需要换成其它的实现类,如 LinkedList或者Vector等等,这时你只要改变这一行就行了: List list = new LinkedList(); 其它使用了list地方的代码根本不需要改动。

假设你开始用 ArrayList alist = new ArrayList(), 这下你有的改了,特别是如果你使用了 ArrayList特有的方法和属性。

地区用 List arr = new ArrayList();定义;行业用 ArrayListarr = new ArrayList();定义;则说明,行业里用到了ArrayList的特殊的方法. 另外的例子就是,在类的方法中,如下声明: private void doMyAction(List list){} 这样这个方法能处理所有实现了List接口的类,一定程度上实现了泛型函数. 如果开发的时候觉得ArrayList,HashMap的性能不能满足你的需要,可以通过实现List,Map(或者Collection)来定制你的自定义类. 摘自aisiteru 博客。

java arraylist用法

-----------构造方法摘要 ArrayList() 构造一个初始容量为 10 的空列表。

ArrayList(Collection<? extends E> c) 构造一个包含指定 collection 的元素的列表,这些元素是按照该 collection 的迭代器返回它们的顺序排列的。

ArrayList(int initialCapacity) 构造一个具有指定初始容量的空列表。

-----------set()不是构造方法 set(int index, E element) 用指定的元素替代此列表中指定位置上的元素。

--顺便问下如果第二个删了,第三个会不会代替第二个的位置,arraylist的长度会不会减少? -----------会的 removeRange(int fromIndex, int toIndex) 移除列表中索引在 fromIndex(包括)和 toIndex(不包括)之间的所有元素。

示例代码如下: import java.util.ArrayList; public class Temp { public static void main(String[] args){ ArrayList al = new ArrayList(11); for(int i=0;i<10;i++){ al.add("string"+(i+1)); } printList(al); System.out.println("//insert one element"); //1为你指定的位置 al.add(1,"stringinsert"); printList(al); System.out.println("//remove one element"); al.remove(1); printList(al); } public static void printList(ArrayList al){//输出ArrayList的方法 System.out.print("current list:|"); for(int i=0;i<al.size();i++){ System.out.print(al.get(i)+" "); } System.out.println("|"); } }

Java中List和ArrayList的区别

很简单 List 是泛型集合,同一个对象只能存你指定的类型,比如 List 只能存 int类型,List 只能存String ArrayList 是集合,同一个对象可以存任意类型的数据,

java中arraylist集合

public class Student { private String name; private String sex; private int age; //set,get方法省略 } public class Clazz { private List<Student> students = new ArrayList<Student>(); //省略get/set方法 } public class Tester{ public static void main(String[] args) { Student stu1 = new Student("stu1","M",24); Student stu2 = new Student("stu2","F",23); List<Student> stus = new ArrayList<Student>(); Clazz clazz = new Clazz(); clazz.setStudents(stus); //遍历 if(clazz.getStudents() != null && clazz.getStudents().size() != 0){ for(Student stu : clazz.getStudents()){ //处理每一个Student对象 } } } }

1C2G5M轻量服务器48元/年,2C4G8M三年仅198元,COM域名首年1元起

腾讯云双十一活动已于今天正式开启了,多重优惠享不停,首购服务器低至0.4折,比如1C2G5M轻量应用服务器仅48元/年起,2C4G8M也仅70元/年起;个人及企业用户还可以一键领取3500-7000元满减券,用于支付新购、续费、升级等各项账单;企业用户还可以以首年1年的价格注册.COM域名。活动页面:https://cloud.tencent.com/act/double11我们分享的信息仍然以秒...

百驰云(19/月),高性能服务器,香港三网CN2 2核2G 10M 国内、香港、美国、日本、VPS、物理机、站群全站7.5折,无理由退换,IP免费换!

百驰云成立于2017年,是一家新国人IDC商家,且正规持证IDC/ISP/CDN,商家主要提供数据中心基础服务、互联网业务解决方案,及专属服务器租用、云服务器、云虚拟主机、专属服务器托管、带宽租用等产品和服务。百驰云提供源自大陆、香港、韩国和美国等地骨干级机房优质资源,包括BGP国际多线网络,CN2点对点直连带宽以及国际顶尖品牌硬件。专注为个人开发者用户,中小型,大型企业用户提供一站式核心网络云端...

提速啦(24元/月)河南BGP云服务器活动 买一年送一年4核 4G 5M

提速啦的来历提速啦是 网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑 由赣州王成璟网络科技有限公司旗下赣州提速啦网络科技有限公司运营 投资1000万人民币 在美国Cera 香港CTG 香港Cera 国内 杭州 宿迁 浙江 赣州 南昌 大连 辽宁 扬州 等地区建立数据中心 正规持有IDC ISP CDN 云牌照 公司。公司购买产品支持3天内退款 超过3天步退款政策。提速啦的市场定位提速啦主...

javaarraylist为你推荐
eofexceptionjava.io.EOFException这是个什么异常应该怎么解决fast路由器FAST无线路由器要怎么设置fast路由器fast路由器怎么安装图解阿里地图魔兽世界wow祖达萨泽布阿里在哪?javaHDvideo有支持AVI 或者RVMB格式的JAVA的手机视频播放器吗?教育城域网中考怎么查分数nvidia官方网站官网NVIDIA驱动和win10系统不兼容,怎么解决?招行信用卡还款招行信用卡怎么还款网络限速软件谁有网络限速的软件,路由器。很卡~别人一看电影什么都干不了。提供个限速的软件。下载成功给分!淘宝推广网站谁有好的淘宝推广网站介绍下哦!或推广技巧!
org域名 域名解析文件 免费申请域名 腾讯云数据库 idc评测网 12u机柜尺寸 申请空间 主机管理系统 lamp什么意思 阿里云邮箱登陆 石家庄服务器 美国达拉斯 卡巴斯基免费下载 paypal登陆 跟踪路由 vpsaa 大硬盘补丁 次时代主机 web服务器硬件配置 联想塔式服务器 更多