可变参数和Collections集合工具类的方法_addAll&shuffle
2024-09-18 03:45:11
可变参数
可变参数:是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]
}
}
最新文章
- shell,bash,git bash,xshell,ssh
- Fort.js – 时尚、现代的表单填写进度提示效果
- Quartz集群配置
- php中global与$GLOBALS的用法及区别-转载
- 简单播放系统提示音 android
- HackerRank ";Training the army"; - Max Flow
- 去掉Visual Studio 编辑器里中文注释的红色波浪线 转载
- NetAnalyzer笔记 之 六 用C#打造自己的网络连接进程查看器(为进程抓包做准备)
- Esper学习之六:EPL语法(二)
- JS中String添加trim()方法
- .NET(C#):觉察XML反序列化中的未知节点
- 创建android画笔程序的样例(有镜面效果)
- USACO Section 1.2 Palindromic Squares 解题报告
- PRINCE2的国际形势?光环国际项目管理培训
- Linux增加磁盘操作
- 计蒜客NOIP模拟赛5 D1T1 机智的 AmyZhi
- Python Generator 运行细节验证
- C语言 >; 指向指针的指针
- Carthage下没有Build文件夹
- zw版【转发&#183;台湾nvp系列Delphi例程】HALCON SetComprise1