可变参数和Collections集合工具类的方法_addAll&shuffle
可变参数
可变参数:是JDK1.5之后出现的新特性
使用前提:当方法的参数列表数据类型已经确定,但是参数的个数不确定,就可以使用可变参数
使用格式:定义方法时使用
~修饰符 返回值类型 方法名(数据类型…变量名){}
可变参数的原理:
~可变参数底层就是一个数组,根据传递参数个数不同,会创建不同长度的数组,来存储这些参数传递的参数个数,可以是0个(不传递),1,2…多个
public static void main(String[] args) {
// int i = add();
// int i = add(10);
int i = add(10,20);
// int i = add(10,20,30,40,50,60,70,80,90,100);
System.out.println(i);
method("abc",5.5,10,1,2,3,4);
}
/*
可变参数的注意事项
1. 一个方法的参数列表,只能有一个可变参数
2. 如果方法的参数有多个,那么可变参数必须写在参数列表的末尾
*/
/*public static void method(int...a,String...b) {
}*/
/*public static void method(String b,double c,int d,int...a) {
}*/
//可变参数的特殊(终极)写法
public static void method(Object...obj) {
}
/*定义计算(0-n)整数和的方法
已知:计算整数的和,数据类型已经确定int
但是参数的个数还不确定,不知道要计算几个整数的和,就可以使用可变参数
add():就会创建一个长度为0的数组,new int[0]
add(10):就会创建一个长度为1的数组,存储传递过来的参数 new int[] {10};
add(10,20):就会创建一个长度为2的数组,存储传递过来的参数 new int[] {10,20};
add(10,20,30,40,50,60,70,80,90,100):就会创建一个长度为10的数组,存储传递过来的参数 new int[] {10,20,30,40,50,60,70,80,90,100};
*/
public static int add(int...arr) {
// System.out.println(arr);//[I@b4c966a 底层是一个数组
// System.out.println(arr.length);//0,1,2,10
int sum = 0;
//遍历数组,获取数组中的每一个元素
for (int i:arr) {
//累加求和
sum +=i;
}
//把求和结果返回
return sum;
}
//定义一个方法,计算三个int类型整数的和
/*public static int add(int a,int b,int c) {
return a+b+c;
}*/
//定义一个方法,计算两个int类型整数的和
/*public static int add(int a,int b) {
return a+b;
}*/
Collections
常用方法
~java.utils.Collections是集合工具类,用来对集合进行操作。部分方法如下:
~public static <T> boolean addAll(Collection<T> c, T... elements):往集合中添加一些元素
~public static void shuffle(List<?> list) 打乱顺序:打乱集合顺序
~public static <T> void sort(List<T> list):将集合中元素按照默认规则排序
~public static <T> void sort(List<T> list,Comparator<? super T> ):将集合中元素按照指定规则排序
/*
- java.utils.Collections是集合工具类,用来对集合进行操作。部分方法如下:
- public static <T> boolean addAll(Collection<T> c, T... elements):往集合中添加一些元素。
- public static void shuffle(List<?> list) 打乱顺序:打乱集合顺序。
*/
public class Demo01Collections {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<>();
//往集合中添加多个元素
/*list.add("a");
list.add("b");
list.add("c");
list.add("d");
list.add("e");*/ //public static <T> boolean addAll(Collection<T> c, T... elements):往集合中添加一些元素。
Collections.addAll(list,"a","b","c","d","e"); System.out.println(list);//[a, b, c, d, e] //public static void shuffle(List<?> list) 打乱顺序:打乱集合顺序。
Collections.shuffle(list);
System.out.println(list);//[b, d, c, a, e], [b, d, c, a, e]
}
}
可变参数和Collections集合工具类的方法_addAll&shuffle的更多相关文章
- 可变参数和Collections集合工具类
可变参数 /** * 可变参数:jdk1.5后出现的新特性 * 使用前期: * 当方法的参数列表数据类型已经确定的时候但是参数的个数不确定的时候就可以使用可变参数 * 使用格式:定义方法的时候使用 * ...
- Collections集合工具类的方法_sort(List)和sort(List,Comparator)方法
Comparator比较器 我们还是先研究这个方法 public static <T> void sort(List<T> list):将集合中元素按照默认规则排序. 不过这次 ...
- Collections集合工具类的方法
addAll & shuffle: 返回类型为boolean类型,执行完操作不接收也行: 其中,静态方法,与对象无关,类名点方法名直接调用: 点点点为可变参数,随便填写几个参数都可以: sor ...
- Collections集合工具类的常用方法
Collections集合工具类的方法 addAll与shuffle import java.util.ArrayList; import java.util.Collections; /* - ja ...
- java第十九天,Collections集合工具类的使用
Collections Java中集合都实现了Collection接口,那么针对集合一些特定的功能,有没有一个接口或类能够统一的集成一些集合必要的功能呢?当然能.它就是--Collections集合工 ...
- Collections集合工具类常用的方法
java.utils.Collections //是集合工具类,用来对集合进行操作.部分方法如下: public static <T> boolean addAll(Collection& ...
- Collections集合工具类,集合嵌套,集合综合案例斗地主
1 Collections集合工具类 (可以对比Arrays工具类共同记忆) 常用方法: 例: import java.util.ArrayList; import java.util.Collect ...
- Collections 集合工具类
集合工具类 包括很多静态方法来操作集合list 而Collections则是集合类的一个工具类/帮助类,其中提供了一系列静态方法,用于对集合中元素进行排序.搜索以及线程安全等各种操作. 1) 排序( ...
- [Guava学习笔记]Collections: 集合工具类
我的技术博客经常被流氓网站恶意爬取转载.请移步原文:http://www.cnblogs.com/hamhog/p/3861431.html,享受整齐的排版.有效的链接.正确的代码缩进.更好的阅读体验 ...
随机推荐
- XCTF练习题---MISC---hit-the-core
XCTF练习题---MISC---hit-the-core flag:ALEXCTF{K33P_7H3_g00D_w0rk_up} 解题步骤: 1.观察题目,下载附件,发现是一个.core文件 2.打 ...
- Linux 运维请务必收藏~ Nginx 五大常见应用场景
关注「开源Linux」,选择"设为星标" 回复「学习」,有我为您特别筛选的学习资料~ Nginx 是一个很强大的高性能 Web 和反向代理服务,它具有很多非常优越的特性,在连接高并 ...
- input 相关
1.label 标签 for 属性同 input 标签 id 属性联系之一
- RESTFul是一种风格
只要符合RESTFul风格的,都可以叫做使用了RESTFul架构,一般的网站里传数据,都是用的?a=1&b=2...如果是RESTFul风格的话,就会是/a/1/b/2..类似于这样的方式来传 ...
- RestFul和控制器
RestFul和控制器 控制器Controller 控制器复杂提供访问应用程序的行为,通常通过接口定义或注解定义两种方法实现. 控制器负责解析用户的请求并将其转换为一个模型. 在Spring MVC中 ...
- Sentinel Dashboard 规则 持久化到Nacos
本篇文章基于sentinel1.8.4版本进行改造的.本篇主要记录改造步骤 1.下载源码 https://github.com/alibaba/Sentinel 2.打开下载的sentinel,到se ...
- iOS全埋点解决方案-时间相关
前言 我们使用"事件模型( Event 模型)"来描述用户的各种行为,事件模型包括事件( Event )和用户( User )两个核心实体.我们在描述用户行为时,往往只需要描述 ...
- 运维:OAAS
IT和互联网运维的新篇章正要掀开,云计算和运维即服务(OaaS)正在为各类企业提供系统构建和扩展,帮助他们取得在线业务的成功. 互联网信息科技和运维一直在不断变化,包括了IT所覆盖的一切新工具.云.基 ...
- vue新手入门之使用vue框架搭建用户登录注册案例,手动搭建webpack+Vue项目(附源码,图文详解,亲测有效)
前言 本篇随笔主要写了手动搭建一个webpack+Vue项目,掌握相关loader的安装与使用,包括css-loader.style-loader.vue-loader.url-loader.sass ...
- 可变数组Vector
package com.demon.languang.business.rest; import java.util.Vector; public class DemonTest { @Suppres ...