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

营销网站服务器wordpress 虎嗅 2017

营销网站服务器,wordpress 虎嗅 2017,网站后台数据库丢失,网站色调选择模块19回顾 在深入探讨模块20之前#xff0c;让我们回顾一下day19中的关键内容#xff1a; Collection集合#xff1a;单列集合的顶级接口#xff0c;提供了add、addAll、clear、size、isEmpty、remove、toArray、contains等方法。迭代器#xff08;Iterator#xff09…模块19回顾 在深入探讨模块20之前让我们回顾一下day19中的关键内容 Collection集合单列集合的顶级接口提供了add、addAll、clear、size、isEmpty、remove、toArray、contains等方法。迭代器Iterator通过iterator方法获取提供了hasNext()和next()方法。在迭代集合时不能随意修改集合长度否则会抛出并发修改异常。数据结构栈先进后出、队列先进先出、数组查询快增删慢、链表查询慢增删快。ArrayList特点包括元素有序、有索引、元素可重复、线程不安全。底层数据结构为数组提供了add、add(index, element)、remove、size、get、set等方法。自动扩容机制扩容1.5倍。LinkedList特点包括元素有序、有索引通过方法支持非本质索引、元素可重复、线程不安全。底层数据结构为双向链表提供了大量直接操作首尾元素的方法。增强for循环格式为for(元素类型 变量名:集合名或者数组名)遍历集合时使用迭代器遍历数组时使用普通for循环。 模块20重点 本模块将深入探讨集合的高级应用包括 掌握Collections集合工具类的常用方法。掌握泛型的使用。了解HashSet和LinkedHashSet的特点及使用。了解HashSet将元素去重的过程。 第一章Collections集合工具类 Collections是一个集合工具类提供了多种静态方法来操作集合。 static T boolean addAll(Collection? super T c, T... elements)批量添加元素。static void shuffle(List? list)将集合中的元素顺序打乱。static T void sort(ListT list)将集合中的元素按照默认规则排序。static T void sort(ListT list, Comparator? super T c)将集合中的元素按照指定规则排序。 public class Demo01Collections {public static void main(String[] args) {ArrayListString list new ArrayList();Collections.addAll(list, 张三, 李四, 王五, 赵六, 田七, 朱八);System.out.println(list);Collections.shuffle(list);System.out.println(list);ArrayListString list1 new ArrayList();list1.add(c.举头望明月);list1.add(a.床前明月光);list1.add(d.低头思故乡);list1.add(b.疑是地上霜);Collections.sort(list1);System.out.println(list1);} }第二章泛型 泛型是Java中用于统一数据类型、防止数据类型转换异常的一种机制。 public class Demo01Genericity {public static void main(String[] args) {ArrayList list new ArrayList();list.add(1);list.add(1);list.add(abc);list.add(2.5);list.add(true);for (Object o : list) {String s (String) o;System.out.println(s.length());}} }2.1 含有泛型的类 public class MyArrayListE {Object[] obj new Object[10];int size;public boolean add(E e) {obj[size] e;size;return true;}public E get(int index) {return (E) obj[index];}Overridepublic String toString() {return Arrays.toString(obj);} }2.2 含有泛型的方法 public class ListUtils {public static E void addAll(ArrayListE list, E... e) {for (E element : e) {list.add(element);}} }2.3 含有泛型的接口 public interface MyListE {boolean add(E e); }2.4 泛型的高级使用 3.1 泛型通配符 ? public class Demo01Genericity {public static void main(String[] args) {ArrayListString list1 new ArrayList();list1.add(张三);list1.add(李四);ArrayListInteger list2 new ArrayList();list2.add(1);list2.add(2);method(list1);method(list2);}public static void method(ArrayList? list) {for (Object o : list) {System.out.println(o);}} }3.2 泛型的上限下限 public class Demo02Genericity {public static void main(String[] args) {ArrayListInteger list1 new ArrayList();ArrayListString list2 new ArrayList();ArrayListNumber list3 new ArrayList();ArrayListObject list4 new ArrayList();get1(list1);//get1(list2);错误get1(list3);//get1(list4);错误System.out.println();//get2(list1);错误//get2(list2);错误get2(list3);get2(list4);}public static void get1(Collection? extends Number collection) {}public static void get2(Collection? super Number collection) {} }第三章斗地主案例扩展案例 3.1 案例介绍 按照斗地主的规则完成洗牌发牌的动作。具体规则使用54张牌打乱顺序三个玩家参与游戏三人交替摸牌每人17张牌最后三张留作底牌。 3.2 案例分析 准备牌牌可以设计为一个ArrayListString每张牌由花色数字两部分组成使用Collections类的shuffle方法进行随机排序。发牌将每个人以及底牌设计为ArrayListString将最后3张牌直接存放于底牌剩余牌通过对3取模依次发牌。看牌直接打印每个集合。 3.3 代码实现 public class Poker {public static void main(String[] args) {ArrayListString color new ArrayList();ArrayListString number new ArrayList();ArrayListString poker new ArrayList();color.add(♠);color.add(♥);color.add(♣);color.add(♦);for (int i 2; i 10; i) {number.add(i );}number.add(J);number.add(Q);number.add(K);number.add(A);for (String num : number) {for (String huaSe : color) {String pokerNumber huaSe num;poker.add(pokerNumber);}}poker.add();poker.add(☺);Collections.shuffle(poker);ArrayListString p1 new ArrayList();ArrayListString p2 new ArrayList();ArrayListString p3 new ArrayList();ArrayListString dipai new ArrayList();for (int i 0; i poker.size(); i) {String s poker.get(i);if (i 51) {dipai.add(s);} else if (i % 3 0) {p1.add(s);} else if (i % 3 1) {p2.add(s);} else if (i % 3 2) {p3.add(s);}}System.out.println(涛哥: p1);System.out.println(三上: p2);System.out.println(金莲: p3);System.out.println(底牌: dipai);} }第四章红黑树了解 集合加入红黑树的目的提高查询效率。HashSet集合的数据结构包括哈希表其中JDK8之前为数组链表JDK8之后为数组链表红黑树以提高查询效率。 每一个节点或是红色的,或者是黑色的 根节点必须是黑色 如果一个节点没有子节点或者父节点,则该节点相应的指针属性值为Nil,这些Nil视为叶节点,每个叶节点(Nil)是黑色的 如果某一个节点是红色,那么它的子节点必须是黑色(不能出现两个红色节点相连 的情况) 对每一个节点,从该节点到其所有后代叶节点的简单路径上,均包含相同数目的黑色节点 https://www.cs.usfca.edu/~galles/visualization/RedBlack 第五章Set集合 Set接口并没有对Collection接口进行功能上的扩充,而且所有的Set集合底层都是依靠Map实现 1.Set集合介绍 Set和Map密切相关Map的遍历需要先变成单列集合只能变成Set集合。 2.HashSet集合的介绍和使用 HashSet是Set接口的实现类具有元素唯一、无序、无索引、线程不安全等特点。底层数据结构为哈希表。 public class Demo01HashSet {public static void main(String[] args) {HashSetString set new HashSet();set.add(张三);set.add(李四);set.add(王五);set.add(赵六);set.add(田七);set.add(张三);System.out.println(set);IteratorString iterator set.iterator();while (iterator.hasNext()) {System.out.println(iterator.next());}for (String s : set) {System.out.println(s);}} }3.LinkedHashSet的介绍以及使用 LinkedHashSet继承自HashSet具有元素唯一、有序、无索引、线程不安全等特点。底层数据结构为哈希表双向链表。 public class Demo02LinkedHashSet {public static void main(String[] args) {LinkedHashSetString set new LinkedHashSet();set.add(张三);set.add(李四);set.add(王五);set.add(赵六);set.add(田七);set.add(张三);System.out.println(set);IteratorString iterator set.iterator();while (iterator.hasNext()) {System.out.println(iterator.next());}for (String s : set) {System.out.println(s);}} }4.哈希值 哈希值是由计算机算出来的一个十进制数可以看做是对象的地址值。获取对象的哈希值使用的是Object中的方法public native int hashCode()。 注意: a. 哈希值不一样内容肯定不一样 b. 哈希值一样内容也有可能不一样 public class Person {private String name;private Integer age;Overridepublic boolean equals(Object o) {if (this o) return true;if (o null || getClass() ! o.getClass()) return false;Person person (Person) o;return Objects.equals(name, person.name) Objects.equals(age, person.age);}Overridepublic int hashCode() {return Objects.hash(name, age);}Overridepublic String toString() {return Person{ name name \ , age age };} }public class Demo01Hash {public static void main(String[] args) {Person p1 new Person(涛哥, 18);Person p2 new Person(涛哥, 18);System.out.println(p1);System.out.println(p2);System.out.println(p1.hashCode());System.out.println(p2.hashCode());} }5.字符串的哈希值是如何算出来的 字符串的哈希值是通过特定的算法计算出来的例如String类的哈希算法。 public int hashCode() {int h hash;if (h 0 !hashIsZero) {h isLatin1() ? StringLatin1.hashCode(value): StringUTF16.hashCode(value);if (h 0) {hashIsZero true;} else {hash h;}}return h; }6.HashSet的存储去重复的过程 HashSet通过计算元素的哈希值和比较内容来去重。 public class Test02 {public static void main(String[] args) {HashSetString set new HashSet();set.add(abc);set.add(通话);set.add(重地);set.add(abc);System.out.println(set);} }7.HashSet存储自定义类型如何去重复 自定义类型需要重写hashCode和equals方法来实现去重。 public class Person {private String name;private Integer age;Overridepublic boolean equals(Object o) {if (this o) return true;if (o null || getClass() ! o.getClass()) return false;Person person (Person) o;return Objects.equals(name, person.name) Objects.equals(age, person.age);}Overridepublic int hashCode() {return Objects.hash(name, age);}Overridepublic String toString() {return Person{ name name \ , age age };} }public class Test03 {public static void main(String[] args) {HashSetPerson set new HashSet();set.add(new Person(涛哥, 16));set.add(new Person(金莲, 24));set.add(new Person(涛哥, 16));System.out.println(set);} }小结 通过本文的学习希望能够帮助您深入理解集合的高级应用包括Collections集合工具类的常用方法、泛型的使用、HashSet和LinkedHashSet的特点及使用以及HashSet将元素去重的过程。这些都是Java集合框架中非常重要的知识点。
http://www.hkea.cn/news/14459121/

相关文章:

  • 高端建网站全国中高风险地区最新名单
  • 新兴县城乡建设局网站登录智推教育seo课程
  • wordpress能做手机站么临邑网站制作
  • 阿里巴巴外贸网站登录哪些小程序可以赚钱
  • 制作网站教学1688货源网一件代发拼多多
  • 东莞市建设安监监督网站首页手机怎样使用域名访问网站
  • 线上会议软件有哪些怎样用百度做网站优化
  • 别人盗用我的网站备案号怎么办中山网站建设设计
  • 网站规划与开发技术属于什么大类做搞笑图片的网站
  • 旅游网站模板htmlwordpress如何使用一个demo
  • 咸阳网站建设价格深圳房地产信息网官方网站
  • 广东建设厅的网站查询余姚网站建设服务
  • wordpress管理员头像成都网站建设优化前十
  • 人才网站建站做公司网站要学会什么
  • 网站一般的后台四川城乡建设网站首页
  • 做网站用什么软件免费房地产网站设计方案
  • 神马网站排名临沂购买模板建站
  • 设计网站数据wordpress速度优化
  • 网站建设费汇算清缴课外辅导东莞网站建设技术支持
  • 南宁自助建站模板下载深圳在哪些网站上面做推广
  • 泉州建设培训中心网站做网站怎么开发客户
  • 上海公司注销seo工资
  • 做网站多少费用更换网站程序
  • 做介绍美食网站的菜单的官方百度
  • 深圳社区网站开发公司网站颜色搭配
  • 广西南宁网站推广做ar的网站
  • 景德镇网站建设景德镇做百度收录比较好的网站
  • 设计一个网站的步骤网页打不开视频
  • 帝国cms怎么做音乐网站福州鼓楼区建设局网站
  • 商务网站建设联系方式编程软件下载手机版