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

手机电视直播网站大全电商网站统计怎么做

手机电视直播网站大全,电商网站统计怎么做,wordpress搬家中文图片,能搜索附近人的软件目录 什么是遍历#xff1f; 一、Collection集合的遍历方式 1.迭代器遍历 方法 流程 案例 2. foreach#xff08;增强for循环#xff09;遍历 案例 3.Lamdba表达式遍历 案例 二、数据结构 数据结构介绍 常见数据结构 栈#xff08;Stack#xff09; 队列 一、Collection集合的遍历方式 1.迭代器遍历 方法 流程 案例 2. foreach增强for循环遍历 案例 3.Lamdba表达式遍历 案例 二、数据结构 数据结构介绍 常见数据结构 栈Stack 队列Queue 链表Link 散列表Hash Table 树Tree List接口 ArraysList集合 LinkedList集合  Set接口  HaseSet集合 LinkedHaseSet集合 TreeSet集合 工具类 Collecations集合工具类 补充 可变参数 什么是遍历 遍历就是一个一个的把容器中的元素访问一遍 一、Collection集合的遍历方式 Collection集合的遍历方式有三种: 迭代器foreach(增强for循环)JDK 1.8开始之后的新技术 Lambda表达式 1.迭代器遍历 方法 public Iterator iterator(): 获取集合对应的迭代器用来遍历集合中的元素 E next():获取下一个元素值 boolean hasNext():判断是否有下一个元素有返回true 反之则返回false 流程 1.先获取当前集合的迭代器迭代器需要写泛型指定类型               IteratorE it lists.iterator(); 2.定义一个while循环问一次取一次    通过it.hasNext()询问是否有下一个元素有就通过               it.next()取出下一个元素          出现异常NoSuchElementException出现没有此元素异常 案例 public class CollectionDemo01 {public static void main(String[] args) {CollectionString lists new ArrayList();lists.add(张三);lists.add(李四);lists.add(王五);lists.add(赵六);System.out.println(lists);// lists [张三, 李四, 王五, 赵六]// 1.得到集合的迭代器对象。IteratorString it lists.iterator();// 2.使用while循环遍历。while(it.hasNext()){String ele it.next();System.out.println(ele);}} } [张三, 李四, 王五, 赵六] 张三 李四 王五 赵六 2. foreach增强for循环遍历 foreach可以遍历集合或者数组 缺点foreach遍历无法知道遍历到了哪个元素了因为没有索引 案例 public class CollectionDemo02 {public static void main(String[] args) {CollectionString lists new ArrayList();lists.add(张三);lists.add(李四);lists.add(王五);lists.add(赵六);System.out.println(lists);// lists [张三, 李四, 王五, 赵六]// elefor (String ele : lists) {System.out.println(ele);}} } [张三, 李四, 王五, 赵六] 张三 李四 王五 赵六 3.Lamdba表达式遍历 JDK 1.8开始之后的新技术Lambda表达式调用foeEach 案例 public class CollectionDemo03 {public static void main(String[] args) {CollectionString lists new ArrayList();lists.add(张三);lists.add(李四);lists.add(王五);lists.add(赵六);System.out.println(lists);// lists [张三, 李四, 王五, 赵六]// elelists.forEach(s - {System.out.println(s);});// lists.forEach(s - System.out.println(s)); // // lists.forEach(System.out::println);} } 二、数据结构 数据结构介绍 数据结构数据是以什么方式组合在一起的 数据结构不仅要存储元素还要提供对元素进行增删改查的操作 常见数据结构 常见的数据结构栈、队列、链表、散列表、树 栈Stack 栈stack是限制插入和删除只能在一个位置上进行的表该位置是表的末端叫做栈顶 top。它是后进先出LIFO的。对栈的基本操作只有 push进栈和 pop出栈两种前者相当于插入后者相当于删除最后的元素 队列Queue 队列是一种特殊的线性表 特殊之处在于它只允许在表的前端front进行删除操作而在表的后端rear进行插入操作和栈一样队列是一种操作受限制的线性表。进行插入操作的端称为队尾进行删除操作的端称为队头 链表Link 1 散列表Hash Table 散列表算法希望能尽量做到不经过任何比较通过一次存取就能得到所查找的数据元素 构造散列函数的方法有         直接定址法 取关键字或关键字的某个线性函数值为散列地址。                 即h(key) key 或 h(key) a * key b其中 a 和 b 为常数。         数字分析法         平方取值法 取关键字平方后的中间几位为散列地址。         折叠法将关键字分割成位数相同的几部分然后取这几部分的叠加和作为散列地址。                  除留余数法取关键字被某个不大于散列表表长 m 的数 p 除后所得的余数为散列地址 即h(key) key MOD p p ≤ m         随机数法选择一个随机函数取关键字的随机函数值为它的散列地址 即h(key) random(key) 树Tree 树具有的特点 每一个节点有零个或者多个子节点 没有父节点的节点称之为根节点一个树最多有一个根节点。 每一个非根节点有且只有一个父节点 名词含义节点指树中的一个元素节点的度节点拥有的子树的个数二叉树的度不大于2叶子节点度为0的节点也称之为终端结点高度叶子结点的高度为1叶子结点的父节点高度为2以此类推根节点的高度最高层根节点在第一层以此类推父节点若一个节点含有子节点则这个节点称之为其子节点的父节点子节点子节点是父节点的下一层节点兄弟节点拥有共同父节点的节点互称为兄弟节点 树基本结构介绍 树的进阶 注意事项         除了java.util.PriorityQueue没有实现Cloneable接口外Java合集框架中的其他类所有类都实现了java.util.Cloneable和java.util.Serializable接口         所以除了优先队列其他合集都可以克隆和实例化 树 左边高向右旋 如果右旋无法满足条件的话放弃右旋用左旋 List接口 List系列集合添加的元素是有序可重复有索引的 LinkedList 添加的元素是有序可重复有索引的 ArrayList 添加的元素是有序可重复有索引的 Vector 是线程安全的速度慢工作中很少使用 List接口中常用方法 public void add(int index, E element): 将指定的元素添加到该集合中的指定位置上。 public E get(int index):返回集合中指定位置的元素。 public E remove(int index): 移除列表中指定位置的元素, 返回的是被移除的元素。 public E set(int index, E element):用指定元素替换集合中指定位置的元素,返回值的更新前的元素 ArraysList集合 ArrayList实现类集合底层基于数组存储数据的查询快增删慢 public void add(int index, E element): 将指定的元素添加到该集合中的指定位置上 public E get(int index):返回集合中指定位置的元素 public E remove(int index): 移除列表中指定位置的元素, 返回的是被移除的元素 public E set(int index, E element):用指定元素替换集合中指定位置的元素,返回更新前的元素值 底层 特点元素增删慢查找快 LinkedList集合  LinkedList是支持双链表定位前后的元素是非常快的增删首尾的元素也是最快的。 提供了很多操作首尾元素的特殊API可以做栈和队列的实现 是一个双向链表 底层 特点 方法 public void addFirst(E e):将指定元素插入此列表的开头。 public void addLast(E e):将指定元素添加到此列表的结尾。 public E getFirst():返回此列表的第一个元素。 public E getLast():返回此列表的最后一个元素。 public E removeFirst():移除并返回此列表的第一个元素。 public E removeLast():移除并返回此列表的最后一个元素。 public E pop():从此列表所表示的堆栈处弹出一个元素。 public void push(E e):将元素推入此列表所表示的堆栈。 public boolean isEmpty()如果列表不包含元素则返回true Set接口  介绍         Set是一个用于存储和处理无重复元素的高效数据结构 特点         没有重复元素没有提过索引遍历 可以使用HaseSet、LinkedHashSet、TreeSet类 研究两个问题(面试热点) 1Set集合添加的元素是不重复的是如何去重复的 2Set集合元素无序的原因是什么 HaseSet集合 HashSet添加的元素是无序不重复无索引的 底层 LinkedHaseSet集合 LinkedHashSet底层依然是使用哈希表存储元素的但是每个元素都额外带一个链来维护添加顺序         增删查快而且有序。         缺点多了一个存储顺序的链会占内存空间而且不允许重复无索引。 TreeSet集合 TreeSet: 不重复无索引按照大小默认升序排序         TreeSet集合自自排序的方式 有值特性的元素直接可以升序排序。浮点型整型字符串类型的元素会按照首字符的编号排序。对于自定义的引用数据类型TreeSet默认无法排序执行的时候直接报错因为说明排序规则。         自定义的引用数据类型的排序实现 对于自定义的引用数据类型TreeSet默认无法排序 所以我们需要定制排序的大小规则程序员定义大小规则的方案有2种 第1种直接为对象的类实现比较器规则接口Comparable重写比较方法拓展方式         如果程序员认为比较者大于被比较者 返回正数         如果程序员认为比较者小于被比较者 返回负数         如果程序员认为比较者等于被比较者 返回0 第2种直接为集合设置比较器Comparator对象,重写比较方法         如果程序员认为比较者大于被比较者 返回正数         如果程序员认为比较者小于被比较者 返回负数         如果程序员认为比较者等于被比较者 返回0 注意如果类和集合都带有比较规则优先使用集合自带的比较规则 Map接口 Map集合是一种双列集合每个元素包含两个值。         Map集合的每个元素的格式keyvalue(键值对元素)。         Map集合也被称为“键值对集合” Map集合的完整格式{key1value1 , key2value2 , key3value3 , ...} 特点 Map集合的特点都是由键决定的Map集合的键是无序,不重复的无索引的。Map集合后面重复的键对应的元素会覆盖前面的整个元素Map集合的值无要求Map集合的键值对都可以为null 注意 Map集合的键和值都可以存储自定义类型。如果希望Map集合认为自定义类型的键对象重复了必须重写对象的hashCode()和equals()方法 实现类         HashMap:元素按照键是无序不重复无索引值不做要求。         LinkedHashMap:元素按照键是有序不重复无索引值不做要求。         TreeMap按照键是可排序不重复的键值对集合 HashMap集合 LinkedHashMap集合 TreeMap集合 工具类 Collecations集合工具类 java.utils.Collections:是集合工具类         Collections并不属于集合是用来操作集合的工具类。 Collections有几个常用的API:          public static T boolean addAll(Collection? super T c, T... elements)              给集合对象批量添加元素          public static void shuffle(List? list) :打乱集合顺序。          public static T void sort(ListT list):将集合中元素按照默认规则排序。          public static T void sort(ListT listComparator? super T ):将集合中元素按照指定规则排序。 补充 可变参数 可变参数用在形参中可以接收多个数据         可变参数的格式数据类型... 参数名称         可变参数的作用 传输参数非常灵活方便可以不传输参数可以传输一个参数可以传输多个参数可以传输一个数组         可变参数在方法内部本质上就是一个数组         可变参数的注意事项 一个形参列表中可变参数只能有一个可变参数必须放在形参列表的最后面 public class MethodDemo {public static void main(String[] args) {sum(); // 可以不传输参数。sum(10); // 可以传输一个参数。sum(10,20,30); // 可以传输多个参数。sum(new int[]{10,30,50,70,90}); // 可以传输一个数组。}public static void sum(int...nums){// 可变参数在方法内部本质上就是一个数组。System.out.println(元素个数nums.length);System.out.println(元素内容 Arrays.toString(nums));System.out.println(--------------------------);} }
http://www.dnsts.com.cn/news/280620.html

相关文章:

  • 做矿业的郑州公司网站网络工程是什么
  • 罗湖医院网站建设普同网站跟营销型网站的区别
  • 创建网站大约多少钱2018杭州旅游网站开发说明书
  • 云南省和城乡建设厅网站深圳的装修公司排名
  • 网站加手机建设png图标十六局门户网登录
  • 网站建设要学会编程吗html静态网页制作代码免费
  • 用dw软件做网站栅格系统公司装修图片大全
  • 课程网站课程资源建设小制作手工 小学生
  • 彻底关闭qq顶部小程序入口高要seo整站优化
  • 小说网站建设方案书ppt模板莱芜吧诚意带大家修车
  • 电影网站开发视频教程男女第一次做网站爱
  • 手机网站会员中心模板下载wordpress破解授权码
  • 北京建设网网站html5手机网站制作教程
  • 徐州网站制作公司哪家好企业做国外网站多少钱
  • 家居网站开发项目计划书北京营销推广公司
  • 百度官方网站登录外卖网站建设可行性分析
  • 百度网站建设的意义手机版 演示 网站 触摸
  • 农商网站建设个人总结网站建设需要域名吗
  • 生态文明建设wordpress百度收录优化
  • 临沂网站设计建设个人主页网页设计源代码
  • 基础微网站开发可信赖成都手机模板建站
  • 网站建设常用的编程语言网站建设背景
  • 某公司网站策划建设网站建设未来发展
  • 佛山自助建站系统网站宝二级域名怎么设置
  • 佛山网站建设公司怎么做企业营销型企业网站建设
  • 网后台的网站怎么做重点专业建设网站
  • 泰国房产网站大全网站门户建设流程
  • 上海有制作网站的电话吗四大门户网站创始人
  • 福州网站建设信息网站建设费用分几年摊销
  • 多个网站 备案吗打开网站不要出现 index.html