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

工厂 网站建设北京招聘网站设计师

工厂 网站建设,北京招聘网站设计师,我想做网站卖衣服做,宁波网站免费制作目录集合一、集合与数组二、集合类体系结构三、泛型(约定集合存储数据类型)四、Collection集合常用API五、Collection集合的遍历方式5.1 迭代器遍历5.2 增强for循环(for each):5.3 lambda表达式六、Collection集合存储自定义类型的对象七、常见数据结构集合 一、集合与数组 数… 目录集合一、集合与数组二、集合类体系结构三、泛型(约定集合存储数据类型)四、Collection集合常用API五、Collection集合的遍历方式5.1 迭代器遍历5.2 增强for循环(for each):5.3 lambda表达式六、Collection集合存储自定义类型的对象七、常见数据结构集合 一、集合与数组 数组的特点数组定义完成并启动后类型确定、长度固定。 因此在进行增删操作的时候数组是不太合适的可能需要放弃原有数组或者移位 弊端 不适合元素的个数和类型不确定的业务场景不适合做需要增删数据操作数组的功能也比较的单一处理数据的能力并不是很强大 因此引入了集合。 集合是java中存储对象数据的一种容器 集合的特点集合的大小不固定启动后可以动态变化类型也可以选择不固定。 优势 集合非常适合元素个数不能确定且需要做元素的增删操作的场景。同时集合提供的种类特别的丰富功能也是非常强大的开发中集合用的更多。 总结 数组和集合的元素存储的个数问题。 数组定义后类型确定长度固定集合类型可以不固定大小是可变的。 数组和集合存储元素的类型问题。 数组可以存储基本类型和引用类型的数据。集合只能存储引用数据类型的数据。 数组和集合适合的场景 数组适合做数据个数和类型确定的场景。集合适合做数据个数不确定且要做增删元素的场景集合种类更多功能更强大。 二、集合类体系结构 集合 Collection单列集合每个元素数据只包含一个值。Map双列集合每个元素包含两个值键值对。 Collection集合特点 List系列集合添加的元素是有序、可重复、有索引。 ArrayList、LinekdList 有序、可重复、有索引。 Set系列集合添加的元素是无序、不重复、无索引。 HashSet: 无序、不重复、无索引LinkedHashSet: 有序、不重复、无索引。TreeSet按照大小默认升序排序、不重复、无索引。 public class CollectionDemo1 {public static void main(String[] args) {//有序 可重复 有索引Collection listnew ArrayList();list.add(Java);list.add(Java);list.add(Mybatis);list.add(12);list.add(12);list.add(false);list.add(false);System.out.println(list);//[Java, Java, Mybatis, 12, 12, false, false]//无序 不重复 无索引Collection list1new HashSet();list1.add(Java);list1.add(Java);list1.add(Mybatis);list1.add(12);list1.add(12);list1.add(false);list1.add(false);System.out.println(list1);//[Java, false, 12, Mybatis]} }三、泛型(约定集合存储数据类型) 集合都是泛型的形式可以在编译阶段约束集合只能操作某种数据类型 CollectionString lists new ArrayListString(); CollectionString lists new ArrayList(); // JDK 7开始后面的泛型类型申明可以省略不写注意集合和泛型都只能支持引用数据类型不支持基本数据类型所以集合中存储的元素都认为是对象。 //Collectionint lists new ArrayList(); 错误写法如果集合中要存储基本类型的数据怎么办 // 存储基本类型使用包装类 CollectionInteger lists1 new ArrayList(); CollectionDouble lists2 new ArrayList();四、Collection集合常用API Collection是单列集合的祖宗接口它的功能是全部单列集合都可以继承使用的。 五、Collection集合的遍历方式 方式一迭代器 方式二foreach/增强for循环 方式三lambda表达式 5.1 迭代器遍历 迭代器遍历概述 遍历就是一个一个的把容器中的元素访问一遍。迭代器在Java中的代表是Iterator迭代器是集合的专用的遍历方式 public static void main(String[] args) {CollectionString listnew ArrayList();list.add(String1);list.add(String2);list.add(String3);list.add(String4);System.out.println(list);//[String1, String2, String3, String4]//1.得到当前集合的迭代器对象IteratorString i list.iterator();//2.定义while循环while (i.hasNext()){String elementi.next();System.out.println(element);}}Collection集合获取迭代器 Iterator iterator()返回集合中的迭代器对象该迭代器对象默认指向当前集合的0索引 Iterator中的常用方法 boolean hasNext():询问当前位置是否有元素存在存在返回true ,不存在返回falseE next()获取当前位置的元素并同时将迭代器对象移向下一个位置注意防止取出越界 迭代器如果取元素越界会出现什么问题 会出现NoSuchElementException异常 5.2 增强for循环(for each): 既可以遍历集合也可以遍历数组。 它是JDK5之后出现的其内部原理是一个lterator迭代器遍历集合相当于是迭代器的简化写法。 实现Iterable接口的类才可以使用迭代器和增强forCollection接口已经实现了lterable接口。 格式 for(元素数据类型 变量名 : 数组或者Collection集合) {//在此处使用变量即可该变量就是元素 }例子 public static void main(String[] args) {CollectionString listnew ArrayList();list.add(String1);list.add(String2);list.add(String3);list.add(String4);System.out.println(list);//[String1, String2, String3, String4]//foreach 进行遍历for (String element:list) {System.out.println(element);} }5.3 lambda表达式 Collection结合Lambda遍历的API: default void forEach(Consumer? super T action): 结合lambda遍历集合 public static void main(String[] args) {CollectionString listnew ArrayList();list.add(String1);list.add(String2);list.add(String3);list.add(String4);System.out.println(list);//[String1, String2, String3, String4]//forEach 内部类list.forEach(new ConsumerString() {Overridepublic void accept(String s) {System.out.println(s);}});//ForEach lambda表达式list.forEach((String s)-{System.out.println(s);});//ForEach lambda表达式简化list.forEach(s-System.out.println(s));}ForEach方法的底层代码通过增强for实现 default void forEach(Consumer? super T action) {Objects.requireNonNull(action);for (T t : this) {action.accept(t);}}六、Collection集合存储自定义类型的对象 案列需求某影院系统需要在后台存储上述三部电影然后依次展示出来 分析 定义一个电影类 public class Movie {private String name;private double score;private String actor;public Movie(String name, double score, String actor) {this.name name;this.score score;this.actor actor;}public String getName() {return name;}public void setName(String name) {this.name name;}public double getScore() {return score;}public void setScore(double score) {this.score score;}public String getActor() {return actor;}public void setActor(String actor) {this.actor actor;} }定义一个集合存储电影对象。创建3个电影对象封装相关数据把3个对象存入到集合中去。遍历集合中的3个对象输出相关信息。 public class TestDemo {public static void main(String[] args) {//定义一个集合存储电影对象。CollectionMovie moviesnew ArrayList();//创建3个电影对象封装相关数据把3个对象存入到集合中去。movies.add(new Movie(《肖生克的救赎》, 9.7 , 罗宾斯));movies.add(new Movie(《霸王别姬》, 9.6 , 张国荣、张丰毅));movies.add(new Movie(《阿甘正传》, 9.5 , 汤姆.汉克斯));//遍历集合中的3个对象输出相关信息。for (Movie m:movies) {System.out.println(片名m.getName());System.out.println(评分m.getScore());System.out.println(导演m.getActor());}} }集合中存储的是元素的什么信息? 集合中存储的是元素对象的地址。 七、常见数据结构 队列先进先出后进后出。栈后进先出先进后出。数组内存连续区域查询快增删慢。链表元素是游离的查询慢首尾操作极快。二叉树永远只有一个根节点, 每个结点不超过2个子节点的树。查找二叉树小的左边大的右边但是可能树很高查询性能变差。平衡查找二叉树让树的高度差不大于1增删改查都提高了。红黑树就是基于红黑规则实现了自平衡的排序二叉树
http://www.w-s-a.com/news/459088/

相关文章:

  • 企业网站建设与网络营销的关系网页qq音乐在线听
  • 网站如何制作学校的做做代销的网站
  • 灌云网站建设维护常州市天宁区建设局网站
  • 广州中小企业网站建设网络营销平台的类型
  • 做非遗网站的原因wordpress ip 插件
  • 微信企业网站 源码下载wordpress 4.9.5 太卡
  • 湖北网站建设公司哪家好房地产最新政策调整
  • 重庆建设岗位培训网站今天重大新闻乌克兰
  • 流水线 东莞网站建设如何在网上销售产品
  • 哪些做图片赚钱的网站网站建设销售业绩任务
  • 建立网站 知乎如何做网站的图片滑动块
  • 国外做珠宝的网站有哪些滨湖区建设局官方网站
  • 关于中国幼教网站开发的经验中国建设银行晋中分行网站
  • 挪威网站后缀如何外贸网络推广
  • 外汇交易网站开发仟亿家设计软件好吗亿家
  • 专门教做甜品的网站郑州高新区建设环保局网站
  • 建站公司怎么获客网站建设全网营销
  • 黄石做网站的公司html免费网站模板
  • 做个商城网站怎么做便宜优酷视频网站源码
  • 网站侧边栏导航代码泰兴市住房和建设局网站
  • html网站登录界面模板确定建设电子商务网站目的
  • wordpress 多站点迁移三台网站seo
  • 工信部网站备案文件好网站建设公司地址
  • 怎么做app和网站购物网站单页面怎么做的
  • 西宁专业做网站教育网站建设策划书
  • 个人网站域名怎么起网站建设业务好跑吗
  • 网页设计的网网页设计的网站企业网站怎样做优化
  • 论文中小企业的网站建设域名网站空间
  • 宿迁网站建设联系电话现在出入邯郸最新规定
  • 男女做羞羞的事情网站30岁转行做网站编辑