如何使用无线网络 第8章 集合框架(1) 本章目标 掌握集合框架包含的内容 掌握ArrayList和LinkedList的使用 掌握HashMap的使用 掌握Iterator的使用 掌握泛型集合的使用 学员1 学员20 如何存储每天的新闻信息? 如何存储ACCP课程的代码与课程信息,能够通过代码方便地获得课程信息? 如果并不知道程序运行时会需要多少对象,或者需要更复杂方式存储对象——可以使用Java集合框架 一维数组 代码1 …… 代码N 课程1 …… 课程N 一一对应 新闻1 …… 新闻N 每天的新闻总数不确定,太少浪费空间,太多空间不足 存储一个班学员信息,假定一个班容纳20名学员 为什么使用集合框架 1 接口 Collection List Map 2 具体类 ArrayList LinkedList HashMap 3 算法 Java集合框架为我们提供了一套性能优良、使用方便的接口和类,它们位于java.util包中 我们不必再重新发明轮子,只需学会如何使用它们,就可处理实际应用中问题 Collections 提供了对集合进行排序、 遍历等多种算法实现 Java集合框架包含的内容 Set TreeSet HashSet TreeMap Java集合框架包含的内容 Collection 接口存储一组不唯一,无序的对象 List 接口存储一组不唯一,有序(插入顺序)的对象 Set 接口存储一组唯一,无序的对象 Map接口存储一组键值对象,提供key到value的映射 Collection List Map Set List接口的实现类 ArrayList实现了长度可变的数组,在内存中分配连续的空间。遍历元素和随机访问元素的效率比较高 LinkedList采用链表存储方式。插入、删除元素时效率比较高 List ArrayList LinkedList ArrayList集合类 存储多条狗狗信息,获取狗狗总数,逐条打印出各条狗狗信息 通过List接口的实现类ArrayList实现该需求 元素个数不确定 要求获得元素的实际个数 按照存储顺序获取并打印元素信息 ArrayList集合类 public class Test1 { public static void main(String[] args) { Dog ououDog = new Dog("欧欧", "雪娜瑞"); Dog yayaDog = new Dog("亚亚", "拉布拉多"); Dog meimeiDog = new Dog("美美", "雪娜瑞"); Dog feifeiDog = new Dog("菲菲", "拉布拉多"); List dogs = new ArrayList(); dogs.add(ououDog); dogs.add(yayaDog); dogs.add(meimeiDog); dogs.add(2, feifeiDog); // 添加feifeiDog到指定位置 System.out.println("共计有" + dogs.size() + "条狗狗。"); System.out.println("分别是:"); for (int i = 0; i < dogs.size(); i++) { Dog dog = (Dog) dogs.get(i); System.out.println(dog.getName() + "\t"+ dog.getStrain()); } } } 创建ArrayList对象并把四个狗狗对象放入其中 输出狗狗的数量 获取第i个元素 ArrayList集合类 扩充以下几部分功能 删除指定位置的狗狗,如第一个狗狗 删除指定的狗狗,如删除feifeiDog对象 判断集合中是否包含指定狗狗 List接口提供相应方法remove()、contains(),直接使用即可 ArrayList集合类 public class Test2 { public static void main(String[] args) { // 1、创建多个狗狗对象 … // 2、创建ArrayList集合对象并把多个狗狗对象放入其中 … System.out.println("删除之前共计有" +dogs.size() + "条狗狗。"); dogs.remove(0); dogs.remove(feifeiDog); System.out.println("\n删除之后还有" + dogs.size() + "条狗狗。"); …

java面向对象各章节教程_第二部分java面向对象编程第08章集合框架List1章节.ppt...相关推荐

  1. php和java的区别菜鸟教程_浅谈Java和PHP的主要区别

    当谈到PHP与Java的差异性问题时,更多的是回答初学者的一些疑问.对于刚接触IT的同学来说,他们需要做好对未来职业的选择.所以是选择PHP还是选择Java更有利于自身的技术特点和发展前景.所以在解决 ...

  2. java面向对象编程集合边框_java 面向对象编程-- 第15章 集合框架

    1.  集合特点:元素类型不同.集合长度可变.空间不固定 2.  java中对一些数据结构和算法进行了封装即集合.集合也是一种对象,用于存储.检索.操作和传输对象. 3.  JCF(Java Coll ...

  3. ArcGIS for Desktop入门教程_第二章_Desktop简介 - ArcGIS知乎-新一代ArcGIS问答社区

    原文:ArcGIS for Desktop入门教程_第二章_Desktop简介 - ArcGIS知乎-新一代ArcGIS问答社区 1 Desktop简介 1.1 ArcGIS for Desktop ...

  4. 《Java程序设计与数据结构教程(第二版)》学习指导

    <Java程序设计与数据结构教程(第二版)>学习指导 目录 图书简况 学习指导 第一章 绪论 第二章 数据和表达式 第三章 使用类和对象 第四章 条件和循环 第五章 编写类 第六章 图形用 ...

  5. java正则截取xml节点_实例讲述Java使用正则表达式截取重复出现的XML字符串功能...

    Java使用正则表达式截取重复出现的XML字符串功能示例 本文实例讲述了Java使用正则表达式截取重复出现的XML字符串功能.分享给大家供大家参考,具体如下: public static void m ...

  6. 【JAVA SE】第十四章 集合框架、语法糖和泛型

    第十四章 集合框架.语法糖和泛型 文章目录 第十四章 集合框架.语法糖和泛型 一.集合框架 1.概念 2.接口 二.语法糖 1.概念 2.解语法糖 三.泛型 1.概念 2.泛型类 3.泛型接口 4.泛 ...

  7. java播放器使用教程_[Java教程]Java音乐播放器

    [Java教程]Java音乐播放器 0 2016-01-07 12:00:09 乐乐音乐目前是基于musique开发的一个java音乐播放器,之前开发了一个android版本的音乐播放器,现在把and ...

  8. java和python自学教程_一张图片让你明白初学者学Java还是python!

    首先,Java和Python都有广泛的应用领域,二者并不冲突,如果可能,最好都学习. 其次,你是想通过学习一门编程语言来求职?那需要了解这两门语言的适用场合. (1)Java语言长期占据编程语言排行榜 ...

  9. 控制台编写JAVA程序教程_写一个java程序的步骤是什么?写java程序技巧

    写Java程序是要按照步骤来的,这样才能写好一个java程序,那么接下来,我们就来给大家讲解一下写一个java程序的步骤是什么? (1)创建Java项目:"FileàNewàProjectà ...

最新文章

  1. 用python画哆啦a梦的身体_用Python画一个哆啦A梦
  2. [软考]2013年系统架构设计师备考
  3. android 多线程 场景,精选Android初中级面试题 (三): 深探Handler,多线程,Bitmap
  4. 临床外显子组测序分析中的那些坑(上)
  5. 北大教授李忠:谁说学数学只是为了升学?数学可以让你受益终生!
  6. 架构设计系列(一)——架构设计概述
  7. NYOJ--C语言---Fibonacci数递归迭代两种解法
  8. LINUX基本指令、NGINX负载均衡基本操作与解释
  9. Flashdevelop解决ANE报Not supported native extensions profile
  10. 如何卸载mysql5.6.28_如何完全删除MySQL以进行全新安装
  11. soap xml_SOAP XML消息–使用Liquid XML Studio进行了解和创建
  12. 如何在 CentOS 中添加、启用和禁用一个仓库
  13. [哈佛幸福课13 听后感]
  14. (转)给想立志入行网络或已经初入行的朋友的建议
  15. arm 协处理器cp14 cp15
  16. 华为和华三(H3C),你总要选一个才行
  17. linux查看是否开启审计功能,linux审计功能auditd
  18. Matlab代码:综合能源系统(IES)的优化调度 风力、光伏、燃气轮机、燃气内燃机、燃气锅炉、余热回收系统、吸收式制冷机、电制冷机
  19. 字符串练习(1-16)
  20. MySQL索引结构解析

热门文章

  1. 为 Angular service 注册 provider 的三种方式
  2. 给基于SAP Spartacus 3.4.1 版本的 Storefront 添加对服务器端渲染的支持
  3. 如何替换SAP Spartacus启动Component -app-root
  4. 一份我们团队Java开发的开发规范,参考了阿里巴巴Java开发手册终极版v1.3.0
  5. 群里有朋友关于SAP Spartacus的疑问
  6. 使用Angular依赖注入自定义SAP Spartacus的ProductAdapter
  7. SAP CRM note的自动拷贝
  8. 使用root用户安装Hybris遇到的错误
  9. customizing download - debug in CRM
  10. windows10大瘦身 - 关闭lync的日志记录