前端做网站需要的技能wordpress文章关键词插件

news/2025/9/27 19:38:26/文章来源:
前端做网站需要的技能,wordpress文章关键词插件,wordpress淘宝优惠券插件,手机h5页面怎么制作Arrays.asList() 使用指南 最近使用Arrays.asList()遇到了一些坑#xff0c;然后在网上看到这篇文章#xff1a;Java Array to List Examples 感觉挺不错的#xff0c;但是还不是特别全面。所以#xff0c;自己对于这块小知识点进行了简单的总结。 简介 Arrays.asList()…Arrays.asList() 使用指南 最近使用Arrays.asList()遇到了一些坑然后在网上看到这篇文章Java Array to List Examples 感觉挺不错的但是还不是特别全面。所以自己对于这块小知识点进行了简单的总结。 简介 Arrays.asList()在平时开发中还是比较常见的我们可以使用它将一个数组转换为一个List集合。 String[] myArray { Apple, Banana, Orange } ListString myList Arrays.asList(myArray); //上面两个语句等价于下面一条语句 ListString myList Arrays.asList(Apple,Banana, Orange);JDK 源码对于这个方法的说明 /***返回由指定数组支持的固定大小的列表。此方法作为基于数组和基于集合的API之间的桥梁与 Collection.toArray()结合使用。返回的List是可序列化并实现RandomAccess接口。*/ public static T ListT asList(T... a) {return new ArrayList(a); }《阿里巴巴Java 开发手册》对其的描述 Arrays.asList()将数组转换为集合后,底层其实还是数组《阿里巴巴Java 开发手册》对于这个方法有如下描述 使用时的注意事项总结 传递的数组必须是对象数组而不是基本类型。 Arrays.asList()是泛型方法传入的对象必须是对象数组。 int[] myArray { 1, 2, 3 }; List myList Arrays.asList(myArray); System.out.println(myList.size());//1 System.out.println(myList.get(0));//数组地址值 System.out.println(myList.get(1));//报错ArrayIndexOutOfBoundsException int [] array(int[]) myList.get(0); System.out.println(array[0]);//1当传入一个原生数据类型数组时Arrays.asList() 的真正得到的参数就不是数组中的元素而是数组对象本身此时List 的唯一元素就是这个数组这也就解释了上面的代码。 我们使用包装类型数组就可以解决这个问题。 Integer[] myArray { 1, 2, 3 };使用集合的修改方法:add()、remove()、clear()会抛出异常。 List myList Arrays.asList(1, 2, 3); myList.add(4);//运行时报错UnsupportedOperationException myList.remove(1);//运行时报错UnsupportedOperationException myList.clear();//运行时报错UnsupportedOperationExceptionArrays.asList() 方法返回的并不是 java.util.ArrayList 而是 java.util.Arrays 的一个内部类,这个内部类并没有实现集合的修改方法或者说并没有重写这些方法。 List myList Arrays.asList(1, 2, 3); System.out.println(myList.getClass());//class java.util.Arrays$ArrayList下图是java.util.Arrays$ArrayList的简易源码我们可以看到这个类重写的方法有哪些。 private static class ArrayListE extends AbstractListEimplements RandomAccess, java.io.Serializable{...Overridepublic E get(int index) {...}Overridepublic E set(int index, E element) {...}Overridepublic int indexOf(Object o) {...}Overridepublic boolean contains(Object o) {...}Overridepublic void forEach(Consumer? super E action) {...}Overridepublic void replaceAll(UnaryOperatorE operator) {...}Overridepublic void sort(Comparator? super E c) {...}}我们再看一下java.util.AbstractList的remove()方法这样我们就明白为啥会抛出UnsupportedOperationException。 public E remove(int index) {throw new UnsupportedOperationException(); }如何正确的将数组转换为ArrayList? stackoverflowhttps://dwz.cn/vcBkTiTW 1. 自己动手实现教育目的 //JDK1.5 static T ListT arrayToList(final T[] array) {final ListT l new ArrayListT(array.length);for (final T s : array) {l.add(s);}return (l); } Integer [] myArray { 1, 2, 3 }; System.out.println(arrayToList(myArray).getClass());//class java.util.ArrayList 2. 最简便的方法(推荐) List list new ArrayList(Arrays.asList(a, b, c)) 3. 使用 Java8 的Stream(推荐) Integer [] myArray { 1, 2, 3 }; List myList Arrays.stream(myArray).collect(Collectors.toList()); //基本类型也可以实现转换依赖boxed的装箱操作 int [] myArray2 { 1, 2, 3 }; List myList Arrays.stream(myArray2).boxed().collect(Collectors.toList()); 4. 使用 Guava(推荐) 对于不可变集合你可以使用ImmutableList类及其of()与copyOf()(工厂方法参数不能为空 ListString il ImmutableList.of(string, elements); // from varargs ListString il ImmutableList.copyOf(aStringArray); // from array 对于可变集合你可以使用Lists类及其newArrayList()工厂方法 ListString l1 Lists.newArrayList(anotherListOrCollection); // from collection ListString l2 Lists.newArrayList(aStringArray); // from array ListString l3 Lists.newArrayList(or, string, elements); // from varargs 5. 使用 Apache Commons Collections ListString list new ArrayListString(); CollectionUtils.addAll(list, str); Collection.toArray()方法使用的坑如何反转数组 该方法是一个泛型方法T[] toArray(T[] a); 如果toArray方法中没有传递任何参数的话返回的是Object类型数组。 String [] s new String[]{dog, lazy, a, over, jumps, fox, brown, quick, A }; ListString list Arrays.asList(s); Collections.reverse(list); slist.toArray(new String[0]);//没有指定类型的话会报错 由于JVM优化new String[0]作为Collection.toArray()方法的参数现在使用更好new String[0]就是起一个模板的作用指定了返回数组的类型0是为了节省空间因为它只是为了说明返回的类型。详见https://shipilev.net/blog/2016/arrays-wisdom-ancients/ 不要在 foreach 循环里进行元素的 remove/add 操作 如果要进行remove操作可以调用迭代器的 remove方法而不是集合类的 remove 方法。因为如果列表在任何时间从结构上修改创建迭代器之后以任何方式除非通过迭代器自身remove/add方法迭代器都将抛出一个ConcurrentModificationException,这就是单线程状态下产生的 fail-fast 机制。 fail-fast 机制 多个线程对 fail-fast 集合进行修改的时可能会抛出ConcurrentModificationException单线程下也会出现这种情况上面已经提到过。 java.util包下面的所有的集合类都是fail-fast的而java.util.concurrent包下面的所有的类都是fail-safe的。 本文转载自SnailClimb的开源项目JavaGuidehttps://github.com/Snailclimb/JavaGuide

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/919852.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

iSCSI网络存储——基于VM17下麒麟V10SP1与SP2的共享配置

iSCSI网络存储——基于VM17下麒麟V10SP1与SP2的共享配置本文适合零基础的Linux新手,通过详细的步骤和实际输出示例,教你如何在VMware虚拟机中搭建iSCSI网络存储环境。📖 教程前言 作为一名Linux新手,你是否曾经好…

微信二次开发文档

微信二次开发文档目前微信社群比较火,市面上社群管理工具也是有各式各样的,但是最终都不开微信的协议,协议样式也有很多,例如web、PC Hook、模拟机、Xposed等。但是目前各类协议的稳定性有待考究。 目前稳定不封号…

网站空间购买价格用ps怎么做学校网站页面

网页图表Highcharts实践教程之标签组与载入动画 Highcharts标签组 在图表的大部分元素都提供了标签功能。但很多时候,我们需要额外说明一些信息。这个时候借助原有的图表元素的标签功能就不是很方便。Highcharts为用户提供了标签组功能。使用该功能可以在图表区的任…

寺院网站建设用个人电脑做网站的步骤

mysql日志管理、备份与恢复 一、数据备份重要性数据备份类型二、数据库备份类型2.1物理备份1.冷备份(脱机备份):2.热备份(联机备份)∶3.温备份: 2.2逻辑备份1.完全备份2.差异备份3.增量备份 三、常见的备份方法3.1物理冷备3.2专用备份工具3.3启用二进制日志进行增量备份3.4第三…

CSP-S1 2025

邮寄J组没报(。) 中午吃饭不知道吃了什么神秘小零食,下午坐车的时候晕车比平常严重很多,而且恶心。最终还是没忍住,在车上进行了一个吐的催...(忏悔) 存疑食物:unk_菜叶子,那一年の_鱿鱼,隔夜の米饭,神秘海…

手机模板的网站哪个好网站建设中首页模板下载

1. 简述 我们使用OpenCV时,有时会在图像的某个位置绘制OSD信息,如绘制一些字符串作为指示信息。 本文将简要介绍在图像(cv::Mat)上绘制固定的字符串信息。 2. 使用的API (1)cv::getTextSize() CV_EXPORT…

北京正邦网站建设建设公司网站哪家好

8月31日,AUTOSEMO“恒以致远,共创共赢”主题研讨会在天津成功召开。本次大会由中国汽车工业协会软件分会中国汽车基础软件生态标委会(简称:AUTOSEMO)与天津市西青区人民政府联合主办。现场汇聚了100余位来自产学研政企…

金币

//题意:国王将金币作为工资,发放给忠诚的骑士。第一天,骑士收到一枚金币; //之后两天(第二天和第三天)里,每天收到两枚金币;之后三天(第四、五、六天)里, //每天收到三枚金币;之后四天(第七、八、九、十天…

【阿里DeepResearch】写作组件WebWeaver详解 - 指南

【阿里DeepResearch】写作组件WebWeaver详解 - 指南pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas"…

常宁市住房和城乡建设局网站简洁大气公司网站

Apache Tomcat - Apache Tomcat 8 Software Downloadshttps://tomcat.apache.org/download-80.cgi2.找到Archives 3.选择下载的把版本 4.选择具体下载那个版本 5. 6.一般选择tar.gz结尾的压缩包

【远程桌面】运维强推设备之远程控制软件RustDesk 1.4.1 全面指南:开源远程桌面的终极解决方案

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

完整教程:PostgreSQL 知识体系

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

加密货币技术革命:揭秘数字复兴时代

加密货币技术的史诗级演进 十年前,“加密货币”这个词对大多数人来说还十分陌生。而如今,几乎人人都听说过比特币、以太坊等加密货币。这种最初神秘的去中心化数字货币,现已发展成为包含DeFi平台、质押机会和NFT奇迹…

第六篇

今天是9月27日,今天没上课,早上睡了个懒觉,中午送了外卖,下午没事情所以写了英语作业,提高了团队协作能力也提高了自己个人协调能力。

6378:删除数组中的元素(链表)

题目 总时间限制: 1000ms 内存限制: 65536kB 描述 给定N个整数,将这些整数中与M相等的删除 假定给出的整数序列为:1,3,3,0,-3,5,6,8,3,10,22,-1,3,5,11,20,100,3,9,3 应该将其放在一个链表中,链表长度为20 要删除的…

【底层机制】Android标准C库为什么选择 bionic 而不是 musl【一】 - 详解

【底层机制】Android标准C库为什么选择 bionic 而不是 musl【一】 - 详解2025-09-27 19:15 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: a…

DiffDock 环境安装和启用教程

DiffDock 环境安装和启用教程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco"…

番禺建设网站公司wordpress创建栏目

最近发现了一个连接mqtt broker的软件:MQTTBox。GitHub地址:https://github.com/workswithweb/MQTTBox 官网网站的介绍为:使用MQTTBox增强你的物联网流程 MQTT客户端特性 支持TCP、TLS、Web Sockets和安全的Web Sockets连接MQTT服务器支持各种…

vs做网站视频教程单页站好做seo吗

代码如下,复制代码为txt文件,更改后缀为“.bat”,把文件放到,需要删除的文件的顶端文件夹内,点击执行。 echo on color 2f mode con: cols80 lines25 REM echo 正在清理SVN文件,请稍候...... rem 循环删除当…

对于烧烤签子的钢材担忧

对于烧烤签子的钢材担忧AI回答:对人体造成持久伤害的可能性是微乎其微的,基本可以忽略不计。 1. 不锈钢材质的稳定性耐腐蚀性强:合格的不锈钢(尤其是食品接触用不锈钢,如常见的304、430不锈钢)含有铬(Cr)和镍(…