做网站不搭建本地环境软件工程考研难度

张小明 2026/1/3 7:42:09
做网站不搭建本地环境,软件工程考研难度,网站建设与栏目设置,苏州做视频网站广告公司Java集合框架体系概要 java.util包下 java.util.Collection#xff1a;存储一个一个数据 子接口#xff1a;List#xff1a;存储有序的、可重复的数据#xff08;“动态”数组#xff09; ArrayList#xff08;主要实现类#xff09;、LinkedList、Vector 子接口…Java集合框架体系概要java.util包下java.util.Collection存储一个一个数据子接口List存储有序的、可重复的数据“动态”数组ArrayList主要实现类、LinkedList、Vector子接口Set存储无序的、不可重复的数据高中学习的集合HashSet主要实现类、LinkedHashSet、TreeSetjava.util.Map存储一对一对的数据key-value键值对x1y1、x2y2— yf(x)类似高中的函数HashMap主要实现类、LinkedHashMap、TreeMap、Hashtable、PropertiesCollection接口及方法JDK不提供此接口的任何直接实现而是提供更具体的子接口如Set和List去实现。Collection 接口是 List和Set接口的父接口该接口里定义的方法既可用于操作 Set 集合也可用于操作 List 集合。方法如下添加1add(E obj)添加元素对象到当前集合中2addAll(Collection other)添加other集合中的所有元素对象到当前集合中即this this ∪ otherTestpublicvoidtest1(){CollectioncollnewArrayList();//add()coll.add(AA);coll.add(123);coll.add(newObject());coll.add(newPerson(Tom,10));System.out.println(coll);//[AA, 123, java.lang.Object6574b225, Person{nameTom, age10}]//addAll()Collectioncoll1newArrayList();coll1.add(456);coll1.add(BB);coll.addAll(coll1);System.out.println(coll);//[AA, 123, java.lang.Object6574b225, Person{nameTom, age10}, 456, BB]}判断3int size()获取当前集合中实际存储的元素个数4boolean isEmpty()判断当前集合是否为空集合5boolean contains(Object obj)判断当前集合中是否存在一个与obj对象equals返回true的元素6boolean containsAll(Collection coll)判断coll集合中的元素是否在当前集合中都存在。即coll集合是否是当前集合的“子集”7boolean equals(Object obj)判断当前集合与obj是否相等//size()System.out.println(coll.size());//4System.out.println(coll1.size());//2//isEmpty()System.out.println(coll.isEmpty());//false//contains()System.out.println(coll.contains(aa));//falseSystem.out.println(coll.contains(AA));//trueSystem.out.println(coll.contains(newPerson(Tom,10)));//false//equals()coll.equals(coll);//truecoll.equals(coll1);//false删除8void clear()清空集合元素9 boolean remove(Object obj) 从当前集合中删除第一个找到的与obj对象equals返回true的元素。10boolean removeAll(Collection coll)从当前集合中删除所有与coll集合中相同的元素。即this this - this ∩ coll11boolean retainAll(Collection coll)从当前集合中删除两个集合中不同的元素使得当前集合仅保留与coll集合中的元素相同的元素即当前集合中仅保留两个集合的交集即this this ∩ coll//clear()// coll.clear();System.out.println(coll);//[]System.out.println(coll.size());//0//remove()coll.remove(newPerson(Tom,10));//[AA, 123, java.lang.Object6574b225]coll.remove(AA);//[123, java.lang.Object6574b225]System.out.println(coll);//removeAll()coll.removeAll(coll1);System.out.println(coll);//[java.lang.Object6574b225]//retainAll()coll.retainAll(coll1);其他12Object[] toArray()返回包含当前集合中所有元素的数组13hashCode()获取集合对象的哈希值14iterator()返回迭代器对象用于集合遍历//toArray()Object[]objcoll.toArray();System.out.println(Arrays.toString(obj));//[AA, 123, java.lang.Object6574b225, Person{nameTom, age10}]//hashCode()System.out.println(coll.hashCode());//-1407561297注数组 — 集合asList(Object … objs)​ 集合 — 数组toArray()Iterator(迭代器)接口作用本身并不提供存储对象的能力用来遍历集合元素获取迭代器对象Iteratoriteratorcoll.iterator();实现遍历的三种方式Testpublicvoidtest1(){CollectioncollnewArrayList();coll.add(AA);coll.add(newPerson(Tom,10));coll.add(128);coll.add(newString(高数));//获取迭代器对象Iteratoriteratorcoll.iterator();//方式一// System.out.println(iterator.next());//AA// System.out.println(iterator.next());//Person{nameTom, age10}// System.out.println(iterator.next());//128// System.out.println(iterator.next());//高数//方式二// for (int i 0; i coll.size(); i)// {// System.out.println(iterator.next());// }//方式三:推荐用法while(iterator.hasNext()){System.out.println(iterator.next());}}迭代器的执行原理Iterator迭代器对象在遍历集合时内部采用指针的方式来跟踪集合中的元素接下来通过一个图例来演示Iterator对象迭代元素的过程foreach循环foreach循环也称增强for循环是 JDK5.0 中定义的一个高级for循环专门用来遍历数组和集合的内部原理其实就是迭代器。foreach循环的语法格式for(元素的数据类型 局部变量 : Collection集合或数组) { //操作局部变量的输出操作 } //这里局部变量就是一个临时变量自己命名就可以Test public void test1() { Collection coll new ArrayList(); coll.add(AA); coll.add(new Person(Tom,10)); coll.add(128); coll.add(new String(高数)); //遍历集合 for(Object obj : coll) { System.out.println(obj); } int[] a new int[]{1,2,3,4,5}; //遍历数组 for (Object obj : a) { System.out.println(obj); } }注foreach通常只用来进行遍历操作一般不进行增删操作在foreach中进行增删操作会破坏迭代器的状态List接口特点鉴于Java中数组用来存储数据的局限性我们通常使用java.util.List替代数组List集合类中元素有序、且可重复集合中的每个元素都有其对应的顺序索引。List集合类中元素有序、且可重复集合中的每个元素都有其对应的顺序索引。常用方法插入元素void add(int index, Object ele):在index位置插入ele元素boolean addAll(int index, Collection eles):从index位置开始将eles中的所有元素添加进来获取元素Object get(int index):获取指定index位置的元素List subList(int fromIndex, int toIndex):返回从fromIndex到toIndex位置的子集合获取元素索引int indexOf(Object obj):返回obj在集合中首次出现的位置int lastIndexOf(Object obj):返回obj在当前集合中末次出现的位置删除和替换元素Object remove(int index):移除指定index位置的元素并返回此元素Object set(int index, Object ele):设置指定index位置的元素为eleTestpublicvoidtest1(){ListlistnewArrayList();list.add(AA);list.add(BB);list.add(123);list.add(newPerson(Tom,10));System.out.println(list);//[AA, BB, 123, Person{nameTom, age10}]//add(int index,Object element)list.add(2,CC);System.out.println(list);//[AA, BB, CC, 123, Person{nameTom, age10}]//addAll(int index,Collection else)Listlist1Arrays.asList(1,2,3);// list.add(2,list1);//将list1整体作为一个元素插入集合中System.out.println(list);//[AA, BB, [1, 2, 3], CC, 123, Person{nameTom, age10}]list.addAll(2,list1);//将集合中的所有元素插入到指定位置中System.out.println(list);//[AA, BB, 1, 2, 3, CC, 123, Person{nameTom, age10}]//remove(int index)//删除索引2list.remove(2);//[AA, BB, 2, 3, CC, 123, Person{nameTom, age10}]System.out.println(list);//删除数据“2”list.remove(Integer.valueOf(2));System.out.println(list);//[AA, BB, 3, CC, 123, Person{nameTom, age10}]}List实现类之间的区别ArrayListList的主要实现类线程不安全的、效率高底层使用Object[]数组存储VectorList的古老实现类线程安全的、效率低底层使用Object[]数组存储LinkedList底层使用双向链表的方式进行存储对于频繁的插入或删除元素的操作建议使用LinkedList类效率较高。这是由底层采用链表双向链表结构存储数据决定的。特有方法void addFirst(Object obj)void addLast(Object obj)Object getFirst()Object getLast()Object removeFirst()Object removeLast()Set接口Set接口是Collection的子接口Set接口相较于Collection接口没有提供额外的方法Set 集合不允许包含相同的元素如果试把两个相同的元素加入同一个 Set 集合中则添加操作失败。Set集合支持的遍历方式和Collection集合一样foreach和Iterator。Set的常用实现类有HashSet、TreeSet、LinkedHashSet。较ListMap来说Set使用的较少用来过滤重复数据HashSet、LinkedHashSet特性无序性不等于随机性set的值存入数组是根据其数据的哈希值确定位置 所以导致其位置分布没有顺序不可重复性传入Set集合的类必须要重写equlas和hashCode方法存入set集合的值会先判断其哈希值是否相同如果相同则无法存入集合主要实现类HashSet底层使用的是HashMap即使用数组单向链表红黑树结构进行存储实现类LinkedHashSet为HashSet的子类在现有的数组单向链表红黑树结构中增加一对双向链表可以按照元素顺序实现遍历便于频繁的查询操作实现类TreeSet底层使用红黑树存储可以按照添加元素的指定属性的大小顺序进行遍历默认自然排序添加到TreeSet中的元素必须是同一个类型的对象否则会报ClassCastException判断元素是否相同不考虑hashCode和equals方法意味着TreeSet中的元素不必要重写hashCode和equals方法比较元素大小或比较元素是否相等的标准是compareTo()或compare()的返回值返回值为0说明相等Map接口存储一对一对的数据key-value键值对x1y1、x2y2— yf(x)类似高中的函数Map中的key彼此之间是不可重复的、无序的所有的key就构成了一个Set集合所以key所在的类要重写HashCode和equals方法Map中的value彼此之间是可重复的、无序的所有的value构成一个Collection集合所以value所在的类要重写equals方法key-value构成一个entry所有的entry彼此之间是不可重复的、无序的所有的entry构成一个Set集合常用方法添加、修改操作Object put(Object key,Object value)将指定key-value添加到(或修改)当前map对象中void putAll(Map m):将m中的所有key-value对存放到当前map中删除操作Object remove(Object key)移除指定key的key-value对并返回valuevoid clear()清空当前map中的所有数据元素查询的操作Object get(Object key)获取指定key对应的valueboolean containsKey(Object key)是否包含指定的keyboolean containsValue(Object value)是否包含指定的valueint size()返回map中key-value对的个数boolean isEmpty()判断当前map是否为空boolean equals(Object obj)判断当前map和参数对象obj是否相等元视图操作的方法Set keySet()返回所有key构成的Set集合Collection values()返回所有value构成的Collection集合Set entrySet()返回所有key-value对构成的Set集合主要实现类HashMap主要实现类线程不安全的效率高可以添加null的key值或value值底层使用数组单向链表红黑树结构存储子类LinkedHashMap在HashMap数据结构的基础上增加了一对双向链表用于记录添加元素的先后顺序遍历时按照遍历的顺序显示开发中频繁的遍历操作建议使用此类实现类Hashtable古老实现类线程安全的效率低不可以添加null的key或value值底层使用数组单向链表结构存储子类Propertieskey和value都是String类型常用来处理属性文件实现类TreeMap底层使用红黑树存储可以按照添加的key-value中的key元素的指定的属性大小顺序进行排序需要考虑自然排序、定制排序**参考TreeSet**TreeMap中key必须是同一类的对象判断元素是否相同不考虑hashCode和equals方法意味着TreeSet中的元素不必要重写hashCode和equals方法比较元素大小或比较元素是否相等的标准是compareTo()或compare()的返回值返回值为0说明相等Collections工具类参考操作数组的工具类ArraysCollections 是一个操作 Set、List 和 Map 等集合的工具类。常用方法Collections 中提供了一系列静态的方法对集合元素进行排序、查询和修改等操作还提供了对集合对象设置不可变、对集合对象实现同步控制等方法均为static方法排序操作reverse(List)反转 List 中元素的顺序shuffle(List)对 List 集合元素进行随机排序sort(List)根据元素的自然顺序对指定 List 集合元素按升序排序sort(ListComparator)根据指定的 Comparator 产生的顺序对 List 集合元素进行排序swap(Listint int)将指定 list 集合中的 i 处元素和 j 处元素进行交换查找Object max(Collection)根据元素的自然顺序返回给定集合中的最大元素Object max(CollectionComparator)根据 Comparator 指定的顺序返回给定集合中的最大元素Object min(Collection)根据元素的自然顺序返回给定集合中的最小元素Object min(CollectionComparator)根据 Comparator 指定的顺序返回给定集合中的最小元素int binarySearch(List list,T key)在List集合中查找某个元素的下标但是List的元素必须是T或T的子类对象而且必须是可比较大小的即支持自然排序的。而且集合也事先必须是有序的否则结果不确定。int binarySearch(List list,T key,Comparator c)在List集合中查找某个元素的下标但是List的元素必须是T或T的子类对象而且集合也事先必须是按照c比较器规则进行排序过的否则结果不确定。int frequency(Collection cObject o)返回指定集合中指定元素的出现次数复制、替换void copy(List dest,List src)将src中的内容复制到dest中boolean replaceAll(List listObject oldValObject newVal)使用新值替换 List 对象的所有旧值提供了多个unmodifiableXxx()方法该方法返回指定 Xxx的不可修改的视图。添加boolean addAll(Collection c,T… elements)将所有指定元素添加到指定 collection 中。同步Collections 类中提供了多个 synchronizedXxx() 方法该方法可使将指定集合包装成线程同步的集合从而可以解决多线程并发访问集合时的线程安全问题
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

小企业怎么建网站平台互联网产品推广是做什么的

点击文末阅读原文免费下载ITIL流程设计体系文档8个最近走访几家企业,发现一个普遍现象:明明已经建立了完善的ITIL流程体系,但在面对云原生、DevOps等新兴运维场景时,总感觉"力不从心"。传统的变更管理、事件管理流程似乎…

张小明 2025/12/26 14:56:30 网站建设

企业网站建设定位注意的问题江西建筑人才网

过去几年,我持续研究跨境电商增长模型,也观察到大量卖家从“单一平台依赖”走向“品牌化独立站”的转型过程。无论是年销售千万的工厂型卖家,还是从 0 到 1 的 DTC 团队,都在用同样一句话总结——“平台越来越难做了,独…

张小明 2025/12/26 14:56:29 网站建设

海外 国内网站建设网站建设会犯法吗

成本直降75%!ERNIE 4.5用2比特量化技术开启大模型普惠时代 【免费下载链接】ERNIE-4.5-300B-A47B-2Bits-TP2-Paddle 项目地址: https://ai.gitcode.com/hf_mirrors/baidu/ERNIE-4.5-300B-A47B-2Bits-TP2-Paddle 导语 百度ERNIE 4.5系列大模型通过异构混合专…

张小明 2025/12/26 14:56:27 网站建设

企业网站建设文档做网站现在用什么软件

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个最简单的RNN入门教程项目,要求:1. 使用最基础的SimpleRNN层 2. 处理手写数字识别(MNIST)任务 3. 代码注释覆盖每一行 4. 包含错误排查指南 5. 提供模…

张小明 2025/12/27 0:34:48 网站建设

南昌网站开发培训班目前提供目录类搜索引擎的网站

异构计算如何实现10倍性能提升?三大加速架构深度解析 【免费下载链接】slang Making it easier to work with shaders 项目地址: https://gitcode.com/GitHub_Trending/sl/slang 从产业痛点到技术突破 在当今计算密集型应用蓬勃发展的时代,传统C…

张小明 2025/12/27 0:34:44 网站建设