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 ...
随机推荐
- [LintCode] Left Pad 左填充
You know what, left pad is javascript package and referenced by React: Github link One day his autho ...
- Oracle求部门员工工资占总工资的比率
--根据每个部门来统计部门工资总和 select deptid, sum(sal) 工资合计 from emp group by deptid; --根据每个部门来统计部门工资总和select dep ...
- thinkphp 的create()非法数据解决办法
是因为create()方法默认是使用post传值的,把from表单的传值方法改成post就行了,默认是get.
- 转 状态压缩DP
引入 首先来说说“状态压缩动态规划”这个名称,顾名思义,状态压缩动态规划这个算法包括两个特点,第一是“状态压缩”,第二是“动态规划”. 状态压缩: 从状态压缩的特点来看,这个算法适用的题目符合以下的条 ...
- spring security 判断用户是否登录 只要登录就可以访问资源
有些情况,只要用户登录就可以访问某些资源,而不需要具体要求用户拥有哪些权限,这时候可以使用IS_AUTHENTICATED_FULLY,配置如下所示: <http auto-config='tr ...
- UIDynamic(物理仿真)
简介 什么是UIDynamic UIDynamic是从iOS 7开始引入的一种新技术,隶属于UIKit框架 可以认为是一种物理引擎,能模拟和仿真现实生活中的物理现象 如: 重力.弹性碰撞等现象 物理引 ...
- yum install maven
wget http://repos.fedorapeople.org/repos/dchen/apache-maven/epel-apache-maven.repo -O /etc/yum.repos ...
- openstack组件之keystone
一 什么是keystone keystone是 OpenStack Identity Service 的项目名称.它在整个体系中充当一个授权者的角色. Keystone项目的主要目的是给整个opens ...
- IOS第16天(5,Quartz2D雪花)
*** #import "HMView.h" @interface HMView() { int count; } @property (nonatomic, assign) CG ...
- IOS第14天(2, Modal控制)
******控制器modal - (void)btnClick { // 创建控制器对象 HMJumpViewController *jump = [[HMJumpViewController all ...