Java 可变参数列表
1.可变参数列表的简单实现
|
package sample;
class A1{}
public class VarArgs {
static void printArray(Object[] args){
for(Object obj:args)
System.out.print(obj+" ");
System.out.println();
}
public static void main(String[] args){
printArray(new Object[]{
new Integer(47),new Float(3.14),new Double(11.11)
});
printArray(new Object[]{"one","two","three"});
printArray(new Object[]{new A1(),new A1(),new A1()});
}
}
|
|
package sample;
class A{}
public class NewVarArgs {
static void printArray(Object...args){
for(Object obj:args)
System.out.print(obj+" ");
System.out.println();
}
public static void main(String[] args){
printArray(new Integer(47),new Float(3.14),new Double(11.11));
printArray(47,
printArray("one","two","three");
printArray(new A(),new A(),new A());
printArray((Object[])new Integer[]{1,2,3,4});
printArray();
}
}
|
|
package sample;
public class OptionalArguments {
static void f(String...trailing){
for(String s:trailing)
System.out.print(s+" ");
System.out.println();
}
public static void main(String[] args){
f("one");
f("two","three");
f();
}
}
|
|
package sample;
public class AutoboxingVarargs {
public static void f(Integer...args){
for(Integer i:args)
System.out.print(i+" ");
System.out.println();
}
public static void main(String[] args){
f(new Integer(1),new Integer(2));
f(3,4,5,6,7,8,9);
f(10,new Integer(11),12);
}
}
|
|
package sample;
public class OverloadingVarargs {
static void f(Character...args){
System.out.print("first ");
for(Character c:args)
System.out.print(c+" ");
System.out.println();
}
static void f(Integer...args){
System.out.print("second ");
for(Integer i:args)
System.out.print(i+" ");
System.out.println();
}
static void f(Long...args){
System.out.print("third ");
for(Long l:args)
System.out.print(l+" ");
System.out.println();
}
static void f(Double...args){
System.out.print("forth ");
for(Double d:args)
System.out.print(d+" ");
System.out.println();
}
public static void main(String[] args){
f('a','b','c');
f(1);
f(2,1);
f(0.1);
f(
}
}
|
|
package sample;
public class OverloadingVarargs2 {
static void f(float i,Character...args){
System.out.println("first");
}
static void f(Character...args){
System.out.println("second");
}
public static void main(String[] args){
f(1,'a');
f('a','b');//Error
}
}
|
|
package sample;
public class OverloadingVarargs2 {
static void f(float i,Character...args){
System.out.println("first");
}
static void f(char c,Character...args){
System.out.println("second");
}
public static void main(String[] args){
f(1,'a');
f('a','b');
}
}
|
Java 可变参数列表的更多相关文章
- <JAVA>可变参数列表
这是java1.5版本的新特性,就是当你想定义一个方法,但是不知道以后要用的时候传几个参数进去,这时可以在方法的参数列表中这样写(参数类型... 数组名),然后在方法内部直接用操作数组的方式操作.比如 ...
- java可变参数列表的实现
参数就是我们调用一个方法时需要传入得数据,在方法中可能需要参数协助处理数据或者对参数进行解析处理以达到我们希望得到的数据和结果. 平常我们在写一个方法时,我们能确定需要传入什么样的参数以及参数的个数, ...
- (四)《Java编程思想》——可变参数列表
以object数组为参数的方法实现可变参数列表 package chapter5; /** * 以object数组为参数的方法实现可变参数列表 */ class A { } public class ...
- 可变参数列表-Java SE5新特性(转)
Java1.5增加了新特性:可变参数:适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理.注意:可变参数必须位于最后一项.当可变参数个数多于一个时,必将有一个不是最后一项,所以只支持 ...
- “全栈2019”Java第三十四章:可变参数列表
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- java基础基础总结----- 构造方法,可变参数列表
package com.mon11.day2; /** * 类说明 :构造方法,可变参数列表 * @author 作者 : chenyanlong * @version 创建时间:2017年11月2日 ...
- java基础(九) 可变参数列表介绍
一.可变参数简介 在不确定参数的个数时,可以使用可变的参数列表. 1. 语法: 参数类型...(三个点) 例如: void printArray(Object...) 注意: 每个方法最多只有一个可变 ...
- Java可变参数 & Python可变参数 & Scala可变参数
Java 可变参数的特点: (1).只能出现在参数列表的最后: (2)....位于变量类型和变量名之间,前后有无空格都可以: (3).调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,在方法体 ...
- java可变参数长度
一: 在python中 有可变参数*args和万能参数**args参数分别为列表和字典.在java中也有类似的可变参数列表.不过传递进去的是可变参数数组. package com.company; p ...
随机推荐
- ASP.NET中Web DataGrid的使用指南
DataGrid/DataList在ASP.NET非常重要,凡显示Table类型的数据,大多会使用这两个控件. 一.方法 1.DataBind很简单.最常用的方法.绑定数据用.需要注意的只有一点:执行 ...
- MongoDB的数据库基本操作(一)
查看当前数据库 MongoDB shell version:1.8.1connecting to:test> dbtest 查看全部数据库列表 >show dbsChatRoom 0 ...
- Android基于XMPP的即时通讯2-文件传输
本文是在上一篇博文Android基于XMPP的即时通讯1-基本对话的基础上,添加新的功能,文件传输 1.初始化文件传输管理类 public static FileTransferManager get ...
- linux修改时区为中国时区(北京)
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
- asp.net 网站开发流程总结
由于这学期要做asp.net的网站开发,导师让我们在前期做详细的计划说明,时间安排.由于网站开发流程不知道,以及需要学什么指示都是盲懂,所以计划安排需在了解大致流程之后才能做出来,一下是询问同学和在网 ...
- 读Thinking in java 4
读tij4 ,生活中还是杂事太多,有时候就忘了最初买书来读的初衷,也没了刚开始激情了,为了督促下自己,好好看完一本书,不妨来写写读书笔记吧.
- c++ 符号执行顺序小例子
if ( a[i] == b[i] && ++i < 0) 这个表达式的执行顺序 1. ; )// 输出 True cout<<"True"&l ...
- JS写四个图片滚动显示的效果
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 数位DP HDU3555
Bomb Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)Total Submi ...
- Week1 学长的经验教训
我手头拿到的是上一届学长的软件工程大作业,作业的名称是——汽车4S店信息管理系统. 这个大作业我认为还是非常典型的传统模式的大作业,由手机端(客户端)和服务端组成,非常的传统. ...