可变参数不可变集合

可变参数:

可变参数:就是形参是可以变化的,很灵活,不需要提前定义好具体的数据,可变参数的变量底层是一个数组

格式:

public static int sum(数据类型...变量名) {}

注意事项:

如果方法里有多个参数,包含可变参数,可变参数要放在最后

代码演示:

public class Demo05 {public static void main(String[] args) {System.out.println(getSum(10, 20, 30, 40, 50, 60, 70, 80, 90, 100));}public static int getSum(int num, int... a) {int sum = 0;for (int i = 0; i < a.length; i++) {sum += a[i];}return sum;}
}
不可变集合:
  • static List of(E…elements) 创建一个具有指定元素的集合对象
  • 在List、Set、Map都有of方法,这个方法不能添加、修改、删除,但是可以实现集合的批量添加,就不用写add了
  • 在Map接口中,有一个ofEntries方法可以提高代码的阅读性,首先会把键值对封装成一个Entry对象,再把这个Entry对象添加到集合当中

方法:

static List of(E…elements)创建一个具有指定元素的List集合对象
static Set of(E…elements)创建一个具有指定元素的Set集合对象
static <K , V> Map<K,V> of(E…elements)创建一个具有指定元素的Map集合对象

代码演示:

public class Demo06 {public static void main(String[] args) {// static <E>  List<E>  of(E…elements)  创建一个具有指定元素的List集合对象//通过调用List.of方法来创建一个不可变的集合,of方法的形参就是一个可变参数。//再创建一个ArrayList集合,并把这个不可变的集合中所有的数据,都添加到ArrayList中。相当于帮助写了add,就是简化操作,// 并且参数是不可变的,再通过list.add、remove啥的都不行ArrayList<String> list3 = new ArrayList<>(List.of("a", "b", "c", "d"));System.out.println(list3);//static <E>  Set<E>  of(E…elements)    创建一个具有指定元素的Set集合对象,set不可重复Set<String> set = Set.of("a", "b", "c", "d");System.out.println(set);//static <K , V>   Map<K,V>  of(E…elements) 创建一个具有指定元素的Map集合对象Map<String, String> map = Map.of("韩信", "打野", "李白", "打野", "露娜", "打野");System.out.println(map);//通过调用ofEntries里的entry把键值对封装成一个对象,再把对象添加到集合,使用起来和Map.of方法是一样的,作用是提高代码的阅读性Map<String, String> entries = Map.ofEntries(Map.entry("韩信", "打野"), Map.entry("李白", "打野"), Map.entry("露娜", "打野"));System.out.println(entries);}
}

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

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

相关文章

我的世界服务器虚拟菜单插件,[综合|娱乐|管理][比赛]VirtualMenu——支持多种类型GUI的虚拟菜单[1.7.10~1.14]...

您尚未登录&#xff0c;立即登录享受更好的浏览体验&#xff01;您需要 登录 才可以下载或查看&#xff0c;没有帐号&#xff1f;注册(register)x本帖最后由 ColorsWind 于 2020-4-4 11:27 编辑写在前面v2版本已发布&#xff0c;欢迎尝试https://github.com/ColorsWind/Virtual…

什么是类加载器

作用&#xff1a; 负责把.class文件&#xff08;存储的物理文件&#xff09;加载在到内存中 类加载时机&#xff1a; 创建类的实例&#xff08;对象&#xff09;调用类的类方法访问类或者接口的类变量&#xff0c;或者为该类变量赋值使用反射方式来强制创建某个类或接口对应的j…

Spring中@Transactional事务回滚(含实例详细讲解,附源码)

原文出处&#xff1a; 小宝鸽 一、使用场景举例 在了解Transactional怎么用之前我们必须要先知道Transactional有什么用。下面举个栗子&#xff1a;比如一个部门里面有很多成员&#xff0c;这两者分别保存在部门表和成员表里面&#xff0c;在删除某个部门的时候&#xff0c;假设…

服务器不稳定 如何让百度重新收录网站,教你如何让百度重新收录首页

很多站长都应该碰到这个问题&#xff1a;百度不收录首页&#xff0c;或者site网站&#xff0c;首页不在第一位。我想这个问题也曾经困扰过许多的站长&#xff0c;我说说导致百度不收录首页或者首页不在第一位的几种状况以及解决的方法。第一 页面链接过多&#xff0c;一般一个…

日志-Log4J

日志&#xff1a; 程序中的日志可以用来记录程序在运行的时候点点滴滴。并可以进行永久存储 日志和输出语句的区别&#xff1a; 输出语句日志技术取消日志需要修改代码&#xff0c;灵活性比较差不需要修改代码&#xff0c;灵活性比较好输出位置只能是控制台可以将日志信息写入…

七月工作笔记 7.7 - 7.11

1. vs第二次单步调试崩溃。。一開始不知道为什么&#xff0c;重装无数次。。后来发现是VAssistX 插件的问题。。。将下载下来的插件包中的VA_X.dll 复制到VAssistX 的安装路径下就可以。2. 发现了一个非常棒的vs配色方案的站点 http://studiostyl.es/3. sendmessage和postme…

VMware安装虚拟机Mac版

VMware&#xff1a; 1、不需要分区或重开机就能再同一台PC上使用多种操作系统。 2、完全隔离并且保护不同操作系统的环境以及所有软件、资料。 3、不同的操作系统之间还能互动操作 4、有复原功能 5、能够设置并且随时修改操作系统的操作环境 下载地址&#xff1a;https://www.v…

Drupal 自己定义主题实体 Theming Custom Entities

在自己定义主题中输出结果时&#xff0c;有三个部分或很多其它特殊的函数。如 hook_menu&#xff0c;Page Callback。MODULE_theme 钩子 1、hook_menu 为了使用自己定义的实体。像创建、编辑、删除、查看实体的功能&#xff0c;就必须要创建一些 Menu path。这里创建、编辑、…

黑暗之魂3正在从服务器获取信息,黑暗之魂3如何解决入侵服务器问题 | 手游网游页游攻略大全...

发布时间&#xff1a;2016-01-04今天为大家带来的是黑暗之魂3法兰守卫入侵方法,一起来看看吧! 黑暗之魂3 法兰守卫入侵方法 法兰守卫怎么入侵 今天为大家带来的是黑暗之魂3法兰守卫入侵方法,一起来看看吧! 你的游戏可能被防火墙禁止了——解决方法:找到你的 ...标签&#xff1a…

Linux用户与用户组

Linux目录详解&#xff1a; 目录名说明/bin重要的二进制 (binary) 应用程序&#xff1a;包含二进制文件&#xff0c;系统的所有用户使用的命令都在这个目录下/boot启动 (boot) 配置文件&#xff1a;包含引导加载程序相关的文件&#xff0c;开机时用到的引导文件/data数据存储区…

数据库增添

条件查询用where 比如&#xff1a;查询Score表中成绩在60到80之间的所有记录。 select DEGREE from score where degree>60 and degree<80 模糊查询用% 比如查询与三相关的数据&#xff1a; where cno like 3% 3%是已三开头 %3%是中间带3 %3是末尾带3 排序查询 orde…

小程序怎样和服务器交互,微信小程序与 Django服务器 数据流 交互通信

Django服务器 解析小程序发送的json二进制字符串https://blog.csdn.net/qq_25068917/article/details/81041048http://www.cnblogs.com/Liang-jc/p/9326680.html小程序 解析Django服务器返回的json二进制字符串(字典)https://blog.csdn.net/qiushi_1990/article/details/759129…

Linux时间date与timedatectl

date&#xff1a; date是Linux里日期管理命令 UTC 协调世界时&#xff0c;又称世界统一时间、世界标准时间、国际协调时间。由于英文&#xff08;CUT&#xff09;和法文&#xff08;TUC&#xff09;的缩写不同&#xff0c;作为妥协&#xff0c;简称UTC GMT 即格林尼治 平太阳时…

2.apache模块mod_rpaf ,让nginx代理后端的apache获取访客真是IP

安装mod_rpaf这个模块 #wget http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz(下载不了就在百度上找相应的软件包下载) #tar xvfz mod_rpaf-0.6.tar.gz #cd mod_rpaf-0.6检查有没有httpd-devel这个工具包(如果没有就安装一下&#xff0c;有就直接执行…

Linux切换用户

显示目前用户的名称 logname切换用户 su 用户名当在权限不够的时候可以使用下面的命令执行&#xff0c;执行完会再自动切换到执行前的用户 su -c 要执行的命令 要切换的用户名 su -c ls root提高普通用户的操作权限,权限提升到了root sudo <参数> sudo ls sudo其它参…

oracle 之 基础操作

//删除存在的表空间及数据 drop tablespace TS_YYGL including contents and datafiles若是出现了提示 错误 导致无法全部删除&#xff0c;那么就执行以下语句可以得到那些表有主键相关&#xff0c;再执行就可以 select alter table ||owner||.||table_name|| drop constraint …

object类型转换为Array类型

var obj {a: 1, b: 2, c: 3}; // .... var arr []; for(var key in obj){ if(!obj.hasOwnProperty(key)){continue;}var item {}; item[key] obj[key]; arr.push(item); } console.log(arr); // [{a: 1}, {b: 2}, {c: 3}] // 将Object的属性输出成Array function objOf…

关机重启与who

关机&#xff1a; shutdown命令可以用来进行关闭系统&#xff0c;并且在关机以前传送讯息给所有使用者正在执行的程序&#xff0c;shutdown 也可以用来重开机使用者权限&#xff1a;管理员用户 关机语法 shutdown [-t seconds] [-rkhncfF] time [message]参数说明&#xff1a;…

webpack之font-awesome

1、安装font-awesome和font-awesome-loader及依赖 git&#xff1a;https://github.com/shakacode/font-awesome-loader npm install font-awesome-loader less less-loader css-loader style-loader file-loader font-awesome -save 2、配置webpack 官方给出的webpack2.0配置如…

目录命令及权限

目录命令及权限&#xff1a; 命令说明ls列出目录cd切换目录pwd显示目前的目录mkdir创建新目录rmdir删除一个空的目录cp复制文件或目录rm移除文件或目录mv移动文件与目录或修改文件与目录的名称 ls列出目录&#xff1a; ls # 显示不隐藏的文件和文件夹 ls -l # 显示不隐藏的…