特点:

    有序重复,包括null,通过整数索引访问

实现类ArrayList和LinkedList

ArrayList--动态数组   不线程同步  单线程合适

        List<String> nList=new ArrayList<String>();
nList.add("A");
nList.add("B");
nList.add("C");
nList.add(1, "D");
nList.set(2, "tanlei");
//使用迭代器进行统一遍历
Iterator<String> lists =nList.iterator();
while(lists.hasNext()) {
String name=lists.next();
System.out.println(name);
}
//增强for循环遍历
for(String name : nList) {
System.out.println(name);
}
System.out.println("********");
System.out.println(nList.indexOf("C"));//返回此元素的索引
System.out.println(nList.remove("tanlei"));//删除首次出现的元素
System.out.println(nList.size());//返回列表中的元素数
System.out.println(nList.contains("tanlei"));//c查询元素中是否包含
System.out.println(nList.get(1));//通过下标访问
System.out.println(nList.isEmpty());//判断里面是否有内容
nList.clear();//清空元素
package com.day1;

import java.util.ArrayList;
import java.util.List; public class ArrayListDemo2 {
public static void main(String[] args) {
List<Student> stulist=new ArrayList<Student>();
Student stu1=new Student("张三", 18);
Student stu2=new Student("李四", 20);
Student stu3=new Student("王五", 22);
stulist.add(stu1);
stulist.add(stu2);
stulist.add(stu3);
Student stu4=new Student("王五", 22);
System.out.println(stulist.indexOf(stu4));//查找stu4王五的下标 根据自己重写的equals方法
System.out.println(stulist.contains(stu4));//容器包含stu4
System.out.println(stulist.remove(stu4));//删除stu4其实是删掉了与stu4相同内容的stu3
System.out.println(stulist.indexOf(stu3));//找不到 -1
System.out.println(stulist.size());//大小为2 }
} class Student{
private String name;
private int age; public Student(String name, int age) {
this.name = name;
this.age = age;
}
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;
} @Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
Student other = (Student) obj;
if (age != other.age)
return false;
if (name == null) {
if (other.name != null)
return false;
} else if (!name.equals(other.name))
return false;
return true;
} }

  

List容器-ArrayList的更多相关文章

  1. 数组容器(ArrayList)设计与Java实现,看完这个你不懂ArrayList,你找我!!!

    数组容器(ArrayList)设计与Java实现 本篇文章主要跟大家介绍我们最常使用的一种容器ArrayList.Vector的原理,并且自己使用Java实现自己的数组容器MyArrayList,让自 ...

  2. 容器--ArrayList

    一.前言 作为List的重要实现之一,ArrayList已经成了我们编写程序时不可或缺的重要容器之一,面试的时候也经常会被问到,所以,深入理解其实现机制,无论是对于我们正确使用这个类来说,还是准备面试 ...

  3. List容器——ArrayList及常用API

    List: ①   List容器是有序的collection(也称为序列).此接口的用户可以对List容器中每个元素的插入位置进行精确地控制.用户可以根据元素的整数索引(在列表中的位置)访问元素,并搜 ...

  4. 练习:自己写一个容器ArrayList集合 一一数组综合练习2

    package cn.bjsxt.collection; /** * 自己实现一个ArrayList */ import java.util.ArrayList; import java.util.L ...

  5. 练习:自己写一个容器ArrayList集合 一一数组综合练习

    package cn.bjsxt.myCollection; import java.util.Arrays; /** * 天下文章一大抄,看你会抄不会抄. * 模拟Stringbuilder 写一个 ...

  6. 容器ArrayList原理(学习)

    一.概述 动态数组,容量能动态增长,元素可以为null,用数组存储,非线程同步(vector线程同步) 每个 ArrayList 实例都有一个容量,该容量是指用来存储列表元素的数组的大小,自动增长(默 ...

  7. Java基础学习总结--对象容器

    目录: ArrayList 顺序泛型容器 HashSet 集合容器 HashMap<Key,Value>容器 要用Java实现记事本的功能.首先列出记事本所需功能: 可以添加记录(字符串) ...

  8. 【Java学习笔记】<集合框架>定义功能去除ArrayList中的重复元素

    import java.util.ArrayList; import java.util.Iterator; import cn.itcast.p1.bean.Person; public class ...

  9. [转] Java中的容器

    在书写程序的时候,我们常常需要对大量的对象引用进行管理.为了实现有效的归类管理,我们常常将同类的引用放置在同一数据容器中. 由于数据容器中存放了我们随时可能需要使用到的对象引用,所以一般的数据容器要都 ...

随机推荐

  1. 使用ssh时报错:Service对象空指针异常

    有可能是spring容器不能自动生成service对象,导致空指针异常,常见的情况可能是在service前面加@Service注释

  2. 每日上亿请求量的电商系统,JVM年轻代垃圾回收参数如何优化? ----实战教会你如何配置

    目录: 案例背景引入 特殊的电商大促场景 抗住大促的瞬时压力需要几台机器? 大促高峰期订单系统的内存使用模型估算 内存到底该如何分配? 新生代垃圾回收优化之一:Survivor空间够不够 新生代对象躲 ...

  3. 关于Git回退再前进造成本地代码和远程仓库代码不一致的问题

    事情经过:  git push 提交之后(版本2.0), 回退, 然后做了一些修改, 发现有问题,于是脑抽回退git reset --hard HEAD^ (版本1,0), 然后又前进到之前那个版本( ...

  4. rabbitmq实现单发送单接收

    1.创建两个项目.都使其支持rabbitmq (1)在pom.xml文件中添加支持rabbitmq的jar包 <dependency> <groupId>org.springf ...

  5. node.js install and cecium apply

    ubuntu 18.04 install node.js https://blog.csdn.net/m0_43404744/article/details/94364508

  6. Android获取App版本号和版本名

    1 //获取版本名 public static String getVersionName(Context context) { return getPackageInfo(context).vers ...

  7. poj 1654 Area(求多边形面积 && 处理误差)

    Area Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 16894   Accepted: 4698 Description ...

  8. [jnhs]全套CRC校验 算法

    摘自 https://blog.csdn.net/cp1300/article/details/51443350 uint8_t crc4_itu(uint8_t *data, uint_len le ...

  9. history-之前发生了什么

    查看一下之前服务器上执行过的命令.看一下总是没错的,加上前面看的谁登录过的信息,应该有点用.另外作为admin要注意,不要利用自己的权限去侵犯别人的隐私哦. 到这里先提醒一下,等会你可能会需要更新 H ...

  10. Leetcode49. Group Anagrams字母异位词分组

    给定一个字符串数组,将字母异位词组合在一起.字母异位词指字母相同,但排列不同的字符串. 示例: 输入: ["eat", "tea", "tan&quo ...