1. List集合的特有功能概述:

(1)添加功能:         

 void  add(int index, Object element):在指定位置添加元素

(2)获取功能:

 Object  get(int  index):获取指定位置的元素

(3)List集合特有的迭代器:

 ListIterator<E>   listIterator():List(列表)迭代器

(4)删除功能:

 Object  remove(int index):根据索引删除元素,返回被删除的元素(通知用户删除了哪个元素)

(5)修改功能:

 Object  set(int index, Object  element):根据索引修改元素,返回被修改的元素。

2. 测试:

 package cn.itcast_03;

 import java.util.ArrayList;
 import java.util.List;

 /*
  * List集合的特有功能:
  * A:添加功能
  *         void add(int index,Object element):在指定位置添加元素
  * B:获取功能
  *         Object get(int index):获取指定位置的元素
  * C:列表迭代器
  *         ListIterator listIterator():List集合特有的迭代器
  * D:删除功能
  *         Object remove(int index):根据索引删除元素,返回被删除的元素
  * E:修改功能
  *         Object set(int index,Object element):根据索引修改元素,返回被修饰的元素
  */
 public class ListDemo {
     public static void main(String[] args) {
         // 创建集合对象
         List list = new ArrayList();

         // 添加元素
         list.add("hello");
         list.add("world");
         list.add("java");

         // void add(int index,Object element):在指定位置添加元素
         // list.add(1, "android");//没有问题 结果为:list:[hello, android, world, java]
         // IndexOutOfBoundsException
         // list.add(11, "javaee");//有问题
         // list.add(3, "javaee");//没有问题 前面添加了3个元素,没有集合size都会递增1,前面添加3个之后,size变成4,索引3(第4个元素添加没有问题)
         // list.add(4, "javaee"); //有问题

         // Object get(int index):获取指定位置的元素
         // System.out.println("get:" + list.get(1));//没有问题 结果为:get:world
         // IndexOutOfBoundsException
         // System.out.println("get:" + list.get(11));//有问题

         // Object remove(int index):根据索引删除元素,返回被删除的元素
         // System.out.println("remove:" + list.remove(1));
         // IndexOutOfBoundsException
         // System.out.println("remove:" + list.remove(11));

         // Object set(int index,Object element):根据索引修改元素,返回被修饰的元素(原来的元素)
         System.out.println("set:" + list.set(1, "javaee"));

         System.out.println("list:" + list);
     }
 }

运行结果如下:

Java基础知识强化之集合框架笔记16:List集合的特有功能概述和测试的更多相关文章

  1. Java基础知识强化之网络编程笔记16:Android网络通信之 使用Http的Get方式读取网络数据(基于HTTP通信技术)

    使用Http的Get方式读取网络数据,使用Get方式与网络通信是最常见的Http通信,建立链接之后就可以通过输入流读取网络数据. 详见:Android(java)学习笔记209:采用get请求提交数据 ...

  2. Java基础知识强化之IO流笔记16:IO流的概述和分类

    1. IO流的分类   流向:     (1)输入流:读取数据到内存     (2)输出流:写入数据到硬盘(磁盘)   操作的数据类型:    (1)字节流:操作的数据是字节             ...

  3. Java基础知识强化之集合框架笔记26:LinkedList的特有功能

    1. LinkedList的特有功能: (1)添加功能  public  void  addFirst(Object   e)  public  void  addLast(Object   e) ( ...

  4. Java基础知识强化之集合框架笔记25:Vector的特有功能

    1. Vector的特有功能: (1)添加功能         public void addElement(Object obj)       -- add() (2)获取功能         pu ...

  5. Java基础知识强化之IO流笔记46:IO流练习之 把文本文件中数据存储到集合中的案例

    1.  把文本文件中数据存储到集合中      需求:从文本文件中读取数据(每一行为一个字符串数据)到集合中,并遍历集合. 分析:      通过题目的意思我们可以知道如下的一些内容,      数据 ...

  6. Java基础知识强化之IO流笔记51:IO流练习之 键盘录入学生信息按照总分排序写入文本文件中的案例

    1.  键盘录入学生信息(姓名,语文成绩,数学成绩,英语成绩),按照总分排序写入文本文件中 分析:   A:创建学生类   B:创建集合对象      TreeSet<Student>   ...

  7. Java基础知识强化之IO流笔记68:Properties和IO流集合使用

    1. Properties和IO流集合使用 这里的集合必须是Properties集合:  public void load(Reader reader):把文件中的数据读取到集合中  public v ...

  8. Java基础知识强化之IO流笔记66:Properties的概述 和 使用(作为Map集合使用)

    1. Properties的概述  Properties:属性集合类.是一个可以和IO流相结合使用的集合类. 该类主要用于读取以项目的配置文件(以.properties结尾的文件 和 xml文件). ...

  9. Java基础知识强化之IO流笔记45:IO流练习之 把集合中的数据存储到文本文件案例

    1. 把集合中的数据存储到文本文件案例:    需求:把ArrayList集合中的字符串数据存储到文本文件 ? (1)分析:通过题目的意思我们可以知道如下的一些内容,ArrayList集合里存储的是字 ...

  10. Java基础知识强化之IO流笔记77:NIO之 Selector

    Selector(选择器)是Java NIO中能够检测一到多个NIO通道,并能够知晓通道是否为诸如读写事件做好准备的组件.这样,一个单独的线程可以管理多个channel,从而管理多个网络连接. 1.  ...

随机推荐

  1. ViewPager部分源码分析二:FragmentManager对Fragment状态的管理完成ViewPager的child添加或移出

    ViewPager维护child代码流程: 注:PagerAdapter 使用的是FragmentPagerAdapter类或者它的子类. viewPager.populate(): void pop ...

  2. JQuery经典小例子——可编辑的表格

    可编辑的表格: 屏幕剪辑的捕获时间: 2015/8/14 9:16 HTML代码为: <!DOCTYPE html> <htmlxmlns="http://www.w3.o ...

  3. Highcharts——大气好用的图标制作工具

    Highcharts是一款纯javascript编写的图表库,能够很简单便捷的在Web网站或Web应用中添加交互性的图表,Highcharts目前支持直线图.曲线图.面积图.柱状图.饼图.散点图等多达 ...

  4. iOS 8以上的设置的跳转

    iOS8以上的系统应用可以与设置进行深层的交互,用户可以根据APP的需要进行对应的权限的设置. 现在大多数的APP依旧仅仅是弹出一个包含操作指令的警示窗口,如“进入设置>隐私>位置> ...

  5. 杭州电 1203 I NEED A OFFER!

    I NEED A OFFER! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) ...

  6. 学习总结------Servlet控制器的简单运用

    前言: 今天将简单的模拟 MVC模式 对Servlet控制器运行 若有不好或不对的地方,欢迎各位大神进行指导! 1.MVC模式(图) MVC全名是Model View Controller,是模型(m ...

  7. c#面向对象-类(类及其构成)

    学习c#已经快一个学期,在这一段时间里,通过自己的努力和老师指导,自己感觉收获颇丰,所以我想把自己学到东西整理一下,供大家点评!若有错误或不当之处,敬请指出. 今天,我先从类及其构成说起! 1.    ...

  8. Linux 新系统个人配置

    1,装codeblocks 2,装vim,检查gcc,g++,修改vim环境 cd ~vim  .vimrc添加如下几行:set shiftwidth=4          (表示每一级缩进的长度)s ...

  9. jdk安装 java环境配置

    登录http://www.oracle.com,下载JDK(J2SE) JDK 1.0,1.1,1.2,1.3,1.4 1.5 (JDK5.0) à支持注解.支持泛型 1.6(JDK6.0) à Se ...

  10. 逻辑卷管理(linux)

    (创建分区)1.fdisk /dev/sdb2.n3default4.default5.+200M6.w7.partprobe(更新分区)8mkfs.ext4 /dev/sdb1//格式化sdb1.. ...