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

app开发 网站建设企业网站建设的实验报告

app开发 网站建设,企业网站建设的实验报告,公司做一个静态网站多少钱,非自己的网站如何做二次跳转一、数据结构 1、栈 压栈 / 弹栈栈顶元素、栈底元素先进后出 2、队列 入队列 / 出队列前端、后端先进先出 3、数组 查询效率高#xff0c;增删效率低 4、链表 查询效率低(必须从头找)#xff0c;增删效率高 5、哈希表 比较方法哈希值equals结构#xff1a;数组 链…一、数据结构 1、栈 压栈 / 弹栈栈顶元素、栈底元素先进后出 2、队列 入队列 / 出队列前端、后端先进先出 3、数组 查询效率高增删效率低 4、链表 查询效率低(必须从头找)增删效率高 5、哈希表 比较方法哈希值equals结构数组 链表元素位置“hashCode % 位置”相同位置的元素通过链表形式连接 二、集合类体系结构 Collection单列 List可重复 ArrayListLinkedList Set不可重复 1. HashSet 2. TreeSet Map双列 HashMap 三、Collection 1、概述 单例集合的顶层接口无直接实现 2、创建对象 多态利用ArrayList CollectionString c new ArrayListString();3、成员方法 1add()添加元素 boolean add(E e) // 永远返回true,重写了toString()方法2remove()移除元素 boolean remove(Object o)3clear()清空集合 void clear()4contains()判断是否存在 boolean contains(Object o)5isEmpty()判空 boolean isEmpty()6size()元素个数 int size()4、快捷键补充 A/t 7 查看结构框架 四、迭代器Iterator 1、概述 Iterator迭代器用于集合遍历 IteratorE iterator();返回集合元素的迭代器 迭代器依赖于集合存在 2、常用方法 1. E next()返回迭代器下一元素 2. boolean hasNext()是否存在下一元素while(it.hasNext()){String s it.next();sout(s); }五、List及其子类 1、List List有序集合可以控制每个元素的插入位置可以索引访问元素 2、List特有方法 1add(index, e)指定插入 //定义 void add(int index, E e)2remove(index)指定删除 //定义 E remove(int index) //返回老元素3set(index, e)指定修改 //定义 E set(int index, E e) //返回老元素4get(index)指定获取 //定义 E get(int index) //返回老元素3、ListIterator 1概述 ListIterator列表迭代器是List集合特有的 2特点 1. 可以任意方向遍历 2. 可以迭代时修改集合3方法 1. E previous()返回迭代器上一元素 2. boolean hasPrevious()是否存在上一元素 3. void add(E e)插入指定元素ListString list new ArrayListString(); ListIteratorString it list.listiterator(); while(it.hasNext()){String s it.next();if(s.equals(world)){it.add(javaee);} }4、ArrayList 数组实现查询快增删慢 5、LinkedList 1概述 链表实现查询慢增删快 2特有功能 1. void addFirst() 2. void addLast() 3. E getFirst() 4. E getLast() 5. E removeFirst() 6. E removeLast()六、并发修改异常 1、异常原因 遍历时修改了集合元素长度 ListString list new ArrayListString(); IteratorString it list.iterator(); while(it.hasNext()){String s it.next();if(s.equals(world)){list.add(javaee);} }2、修改办法 1不用迭代器用for循环索引元素 ListString list new ArrayListString(); for(int i 0; i list.size(); i){String s list.get(i);if(s.equals(world)){list.add(javaee);} }2用列表迭代器添加元素 ListString list new ArrayListString(); ListIteratorString it list.listiterator(); while(it.hasNext()){String s it.next();if(s.equals(world)){it.add(javaee);} }七、增强for 增强for循环简化数组和Collection集合的遍历 实现Iterable接口的类允许其对象成为增强型for循环的目标原理是Iterator迭代器 -- 会触发“并发修改异常” for(元素数据类型 变量名 : 数组/Collection集合){//变量就是元素 }//示例 int[] arr {1,2,3,4,5}; for(int i : arr){sout(i); }八、Set及其子类 1、Set 不包含重复元素没有索引不能用普通for循环遍历迭代顺序随机 2、HashSet 1哈希值 1. 根据对象的地址/字符串/数字算出来的int类型的数值 2. public int hashCode 1. 返回对象的哈希值 2. Object类2HashSet概述 1. 底层为哈希表(HashMap) 2. 迭代顺序无保障 3. 没有索引不能用不同for循环遍历 4. Set集合没有重复元素 -- **需要重写对象的hashCode与equal方法**3HashSet存储特点 比较方法 哈希值equals 结构数组 链表 元素位置“hashCode % 位置”相同位置的元素通过链表形式连接 3、LinkedHashSet 底层链表 哈希表可预测的迭代次序HashSet集合没有重复元素 4、TreeSet 元素有序自然排序无参构造TreeSet()比较器排序带参构造TreeSet(Comparator comparator)存储引用类/包装类类型 自然排序 -- 重写compareTo方法 Override public int compareTo(Stu s){return this.age - s.age 0 ? this.name.compareTo(s.name) : this.age - s.age; }比较器排序 -- 匿名内部类 TreeSetStu ts new TreeSet(new ComparatorStu(){Overridepublic int compare(Stu s1, Stu s2){return s1.getAge() - s2.getAge() 0 ? s1.getName().compareTo(s2.getName()) : s1.getAge() - s2.getAge();} });九、泛型 1、泛型概述 将类型由原来的具体的类型参数化然后在使用/调用时传入具体的类型本质参数化类型实参类型只能是引用数据类型泛型定义格式类型类型1, 类型2… 2、泛型类定义格式 修饰符 class 类名类型{...}类型可以是随便写的任意标识 TtypeEelementKkeyVvalue 3、泛型方法 泛型方法 -- 不限制类型的万金油泛型方法定义格式 -- 修饰符 类型 返回值类型 方法名(类型 变量名){...} 4、泛型接口 修饰符 interface 接口名类型{...} 5、类型通配符 类型通配符?表示各种泛类List的父类元素可以匹配任何类型不能添加元素类型通配符的上限? extends 类型表示此类型及其子类类型通配符的下限? super 类型表示此类型及其父类 6、可变参数 1可变参数的定义格式 修饰符 返回值类型 方法名(数据类型...变量名){} public static int sum(int...a){int sum 0;for(int i : a){sum i;}return sum; }2特点 变量其实是数组多个参数要把可变参数放最后 3可变参数的应用 1. Arrays工具类的静态方法 // 定义 public static T ListT asList(T...a) // 使用 ListString list Arrays.asList(wc,wmh);返回有指定数组支持的固定大小的列表 -- 不能增删可以改 2. List接口的静态方法 // 定义 public static E ListE of(E...elements) // 使用 ListString list List.of(wc,wmh);返回包含任意数量元素的不可变列表 -- 不能增删改 3. Set接口的静态方法 // 定义 public static E SetE of(E...elements) // 使用 SetString s Set.of(wc,wmh);返回一个包含任意数量元素的不可变集合 -- 不能增删改 十、Map 1、概述 Interface MapK, V K键 V值 将key映射到value的对象 key不可以重复 每个key只对应一个value 2、创建Map集合的方式 多态 3、具体实现类HashMap 添加元素V put(K key, V value) 删除V remove(Object key) 清空void clear() 判键存在boolean containsKey(Object key) 判值存在boolean containsValue(Object key) 判空boolean isEmpty() 集合长度int size() Map的获取方法 根据键获取值 java // 定义 V get(Object key) // 使用 MapString,String map new Map(); map.put(1,wmh); sout(map.get(1));获取所有键的集合 java // 定义 SetK keySet() // 使用 SetString keySet map.keySet(); for(String key : keySet){sout(key); }获取所有值的集合 java // 定义 CollectionV values() // 使用 CollectionString values map.values(); for(String value : values){sout(value); }获取所有键值对对象的集合 java // 定义 SetMap.EntryK, V entrySet() // 使用 SetMap.EntryString,String entrySet map.entrySet(); for(Map.EntryString,String me : entrySet){sout(me.getKey() , me.getValue()); }Map集合的遍历 // 方式1 SetString keySet map.keySet(); for(String key : keySet){sout(key , map.get(key)); } // 方式2 SetMap.EntryString,String entrySet map.entrySet(); for(Map.EntryString,String me : entrySet){sout(me.getKey() , me.getValue()); }十一、Collections工具类 常用方法(类要重写compareTo方法) 1、列表升序排列 // 定义 public static T extends Comparable? superT void sort(ListT list) // 使用:普通集合 Collections.sort(list); // 使用:类的集合 -- 比较器排序 -- 匿名内部类/类内重写 ArrayListStu array new ArrayList(); Collections.sort(array, new ComparatorStu(){Overridepublic int compare(Stu s1, Stu s2){return s1.getAge() - s2.getAge() 0 ? s1.getName().compareTo(s2.getName()) : s1.getAge() - s2.getAge();} });2、反转列表顺序 // 定义 public static void reverse(List? list) // 使用 Collections.reverse(list);3、列表随机排列 // 定义 public static void reverse(List? list) // 使用 Collections.reverse(list);
http://wiki.neutronadmin.com/news/222617/

相关文章:

  • 嵌入式软件工程师待遇广州seo工作
  • 做网站更赚钱吗海南网站网络推广
  • 怎样建立一个公司网站网站登录密码怎么取消保存
  • 沈阳住房建设局网站全球十大互联网企业
  • 视觉asp网站源码郴州新网二手车信息
  • 天津网站建设行业新闻wordpress 不显示账号名
  • wordpress插件如何应用上海网优化seo公司
  • 网站优化的目的软件app开发公司如何选择
  • 国内高清视频素材网站推荐企业网站模板湖南岚鸿
  • 企业建站做网站安徽建站费用
  • 中山网站建设文化平台做盗版漫画网站
  • 泰安58路优化火车票
  • 江苏省住房城乡建设厅网站网站建设 jsp php
  • 做网站域名的好处是什么安徽元鼎建设公司网站
  • 网站备案进程查询html网站开发实例视频
  • 网上给别人做网站十堰网站推广
  • 商城网站开发流程图网站开发学什么 2018
  • 网站建设实训总结封面绵竹网站建设
  • 高端网站建设的小知识郑州网络推广团队
  • 网站自适应手机端专业网站建设费用包括
  • 小天才电话手表网站wordpress自定义分类法
  • 河南做网站送记账广告创意
  • 广州公司网站制作企业门户样式
  • 公司网站的作用意义维护建设管理那个网站做二手买卖的
  • 绛县网站建设网站title标签内容怎么设置
  • 做短视频的网站先进网站建设流程
  • 资源网站都有哪些山河集团建设有限公司网站
  • php网站目录系统江西百度推广公司
  • 电热设备网站建设网站推广手段有哪些
  • 5年网站续费多少钱太康做网站公司