当前位置: 首页 > wzjs >正文

珠海企业建站模板重庆网站建设外包

珠海企业建站模板,重庆网站建设外包,男女做羞羞的事情网站,客服呼叫中心系统免费目录 List集合(collection接口) 1.1ArrayList定义 1.2方法 2.1集合泛型定义 2.2方法 3.1LinkedList定义 3.2方法 4.1Vatory定义 4.2方法 5.总结 集合 一个长度可变的容器。 List集合(collection接口) List是一个有序…

目录

List集合(collection接口)

1.1ArrayList定义

1.2方法

2.1集合+泛型定义

 2.2方法

3.1LinkedList定义

3.2方法

4.1Vatory定义

4.2方法 

5.总结

集合

一个长度可变的容器。

List集合(collection接口)

List是一个有序的集合(也称为序列),底层是数组 自动扩容 初始容量10,它允许存储重复的元素。默认支持存储任意数据类型(引用数据类型,不支持基本数据类型)用户可以精准控制列表中每个元素的插入位置,并且通过索引0访问元素。

1.1ArrayList定义

由于底层是靠数组完成的数据存取,所以查询效率高(根据 index 查询),增删效率低。

1.2方法

package com.hualan.listDemo;
import java.util.ArrayList;
import java.util.List;
public class ArrayListDemo {public static void main(String[] args) {//1.创建集合对象 初始容量是10如果容量不足,扩容原有的1.5倍,如果1.5之后空间仍不足,扩容为所需的最小容量List list = new ArrayList();//2.增加元素 引用数据类型list.add("hello");list.add(12.3);//基本数据类型会自动装箱list.add("郭玉洁");//3.查询数据 根据索引下标 找到指定位置的元素//System.out.println(list.get(0));//4.根据下标更改数据//list.set(0,"你好");//5.获取数据// System.out.println(list.get(0));//6.移除某个元素list.remove(0);//System.out.println(list.get(0));list.remove("郭玉洁");//7.移除全部元素list.removeAll(list);System.out.println(list.size());//有序 新增的顺序和查询顺序保持一致for (int i = 0; i < list.size(); i++) {System.out.println(list.get(i));}//增强for循环(底层使用了迭代器)for(Object o : list){System.out.println(o);}//迭代器Iterator it = list.iterator();while(it.hasNext()){//判断迭代器中是否还有元素Object obj = it.next();//指针下移 获取当前元素System.out.println(obj);
}}
}

2.1集合+泛型定义

 规定集合中只能存储一种数据类型,避免运行过程中类型转换导致的异常

 2.2方法

package com.hl.listDemo;
import java.util.ArrayList;
import java.util.List;
/*
集合 + 泛型(规定集合中只能存储一种数据类型,避免运行过程中类型转换导致的异常)
*/
public class ArrayListDemo4 {
public static void main(String[] args) {
//泛型 <>
List<Object> list = new ArrayList<>();
list.add("a");
list.add(11);
list.add(new Student());
//要求集合中只能存储特定的数据类型
List<Student> list2 = new ArrayList<>();
list2.add(new Student());
//list2.add("1111");//编译错误
List<Student> list3 = new ArrayList<Student>();
//查询
for(Student stu:list2){
System.out.println(stu.getName());
}
//for object
for(Object obj:list){
Student stu = (Student)obj;
System.out.println(stu.getName());
}
}
}
class Student{
private String name;
public String getName() {
return name;
}

3.1LinkedList定义

linkedList 底层是双向链表
LinkedList 底层为链表 不牵涉初始容量和扩容机制
LinkedList 底层是双向链表和队列结构
队列 队头 队尾
LinkedList 有序,可以重复

3.2方法

package com.hualan.listDemo;
import java.util.LinkedList;
public class LinkedListDemo1 {public static void main(String[] args) {LinkedList list = new LinkedList();list.add("hello");list.add("world");list.add("java1");list.add("java2");//在队头新增list.addFirst("java3");//在队尾新增list.addLast("java4");System.out.println(list);System.out.println(list.contains("java1"));System.out.println(list.indexOf("java1"));//获取第一个元素System.out.println(list.get(0));System.out.println(list.peek());System.out.println(list);//删除第一个元素System.out.println(list.remove(0));System.out.println(list.pop());System.out.println(list);}
}

4.1Vatory定义

Vector 实现类,它和 ArrayList 相似,唯一的区别是, Vector 在多线程环境下是安全的,但访问效率低。

4.2方法 

//线程安全 效率低 底层是数组
Vector<String> v = new Vector();
v.add("aaaaaa");
//线程不安全 效率高
List list = new ArrayList();
list.add("aaaaaa");
//创建一个线程安全的ArrayList对象
List list2 = Collections.synchronizedList(new ArrayList());

5.总结

Collection是单值集合,它可以细分为有序(有下标)可重复集合(List),和不可重复集合Set

List是有序可重复集合,有下标的概念,它除了具有Collection全部的功能外,添加了和index相关的方法。

ArrayList实现类,底层数据结构是数组,它的特点是按下标查找元素快,但是插入元素,删除元素效率低,因为需要移动数据。

LinkedList实现类,底层数据结构是双向链表,它的特点是插入、删除元素效率高,根据下标找元素效率低。

Vector实现类,它和ArrayList相似,唯一的区别是,Vector在多线程环境下是安全的,但访问效率低。

增强for循环或者迭代器 边迭代边删除 出现并发修改异常问

解决此问题需要 同步删除 迭代器中元素和list中的元素

http://www.dtcms.com/wzjs/185455.html

相关文章:

  • 女生做网站开发如何让百度搜索到自己的网站
  • 做网站十大公司哪家好如何快速推广网站
  • 网站建设公司软件开发神马网站快速排名案例
  • 建站软件线下推广
  • 网站源码模块网络营销顾问工作内容
  • 济南企业网站制作英文外链seo兼职在哪里找
  • 海淀网站建设龙岩百度推广后台登陆
  • 嘉兴ai人工智能开发网站建设深圳优化公司统高粱seo
  • 北京seo实战培训班班级优化大师使用心得
  • wordpress添加下文件seo专员是干什么的
  • dede网站qq类文章源码深圳搜索引擎优化推广便宜
  • 电子政务网站建设的步骤一般为b2b电子商务平台
  • 网站怎么盈利长沙排名推广
  • 做代购网站湖南竞价优化哪家好
  • 网站关键词库如何做成都网站关键词排名
  • 福州云建站模版合肥seo
  • 网站如何免费推广软文怎么写
  • 做衣服的教程网站在线crm网站建站
  • 在网站上怎么做推广论坛软文案例
  • 浏览器怎样屏蔽网站枸橼酸西地那非片
  • 品牌网站建设浩森宇特常州seo
  • 秦皇岛网站制作市场营销证书含金量
  • 建设一个商城网站要多少钱seo诊断方法步骤
  • 江苏住房建设厅网站百度域名注册官网
  • 蚌埠网站建设专业的公司新媒体运营工作是什么
  • 赣州开发区网站建设建立网站
  • 网站与云平台区别吗惠城网站设计
  • 宝应县建设局网站百度推广电话销售好做吗
  • 网站建设推广资讯本周国内重大新闻十条
  • 连云港网站建设小姐关键词代发排名