java可变参数长度
一:
在python中 有可变参数*args和万能参数**args参数分别为列表和字典。在java中也有类似的可变参数列表。不过传递进去的是可变参数数组。
package com.company;
public class Len_Chan_Args {
public static void main(String[] args){
Chan_Args chang=new Chan_Args();
chang.chan_Args("tom","jack");
}
}
class Chan_Args{
public void chan_Args(String x,String y){
System.out.printf("the string is %s %s",x,y);
}
}
其中printf()就是可变参数列表方法。我们看下源码;


可变参数的语法形式:object ... args用三个句点来表示这个方法接收的参数是可变。且可变参数位置未其他形参的最后。前一个为数据的类型,后一个args为参数的数组列表。
实际上object ... args表示object数组object[],当我们填写基本的整型的时候,会自动装箱传入Intger对象。在传入参数的时候,自动扫描字符串format,将其中的第i格式的说明符和object数组args[i]对应起来。
public class Len_Chan_Args {
public static void main(String[] args){
Chan_Args chang=new Chan_Args();
chang.chan_Args("tom","jack");
System.out.printf("max number is %f",chang.max(1,2,3,5));
}
}
class Chan_Args{
public void chan_Args(String x,String y){
System.out.printf("the string is %s %s\n",x,y);
}
public double max(double ... args){
double largest=Double.MIN_VALUE;
for (double x:args){
if(x>largest){
largest=x;
}
}
return largest;
}
}
输出:

其中传入可变参数,args为数组。我们可以对其进行遍历。其中Double.MIN_VALUE为常量。为double类型的最小值。
type ... args可以写成type[] args形式。其中我们熟悉的main函数也可以这么写:
public class Len_Chan_Args {
public static void main(String ... args){
Chan_Args chang=new Chan_Args();
chang.chan_Args("tom","jack");
System.out.printf("max number is %f",chang.max(1,2,3,5));
}
}
java可变参数长度的更多相关文章
- Java可变参数/可变长参数
Java可变参数/可变长参数 传递的参数不确定长度,是变长的参数,例如小例子: package demo; public class Demo { public static int sum(int ...
- Java可变参数 & Python可变参数 & Scala可变参数
Java 可变参数的特点: (1).只能出现在参数列表的最后: (2)....位于变量类型和变量名之间,前后有无空格都可以: (3).调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,在方法体 ...
- java可变参数
Java1.5增加了新特性:可变参数:适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理.注意:可变参数必须位于最后一项.当可变参数个数多余一个时,必将有一个不是最后一项,所以只支持 ...
- Java 可变参数列表
1.可变参数列表的简单实现 当调用方法时,方法的参数个数或类型未知时,称其为可变参数列表.在以前的Java代码中,可以使用Object数组来实现这样的功能.因为,所有的类都是直接或间接继承于Objec ...
- Java 可变参数
java1.5增加了新特性:可变参数:适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理.注意:可变参数必须位于最后一项.当可变参数个数多余一个时,必将有一个不是最后一项,所以只支持 ...
- Java可变参数以及一个简单应用
可变参数: Java1.5增加了新特性:可变参数:适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理. 注意:可变参数必须位于最后一项. 原因:当可变参数个数多余一个时,必将有一个不 ...
- 坑爹的 Java 可变参数,把我整得够惨。。
最近在写一个功能点,用了 Java 中的可变参数,真是把我搞得够惨.. 什么是可变参数? 就是方法参数用 Object... args 三个点形式,一个参数可以接收多个参数. 实际的代码就不帖了,来看 ...
- Java可变参数方法
概念: jdk5.0出现的新特性.将同一个类中,多个方法名相同.参数类型相同.返回类型相同,仅仅是参数个数不同的方法抽取成一个方法,这种方法称为可变参数的方法 好处: 提高代码的重用性和维护性 语法: ...
- Java可变参数与Collections工具类使用了解
今天发现jdk1.5后增加了个可变参数,以前还一直不晓得 public static void main(String[] args) { System.out.println(getNum(1,2, ...
随机推荐
- Appium1.9.1 之 Desired Capabilities 释疑
服务关键字 Desired Capabilities在启动session的时候是必须提供的. Desired Capabilities本质上是以key value字典的方式存放,客户端将这些键值对发给 ...
- attribute与parameter区别(转)
文章转自http://blog.csdn.net/saygoodbyetoyou/article/details/9006001 request.getParameter取得Web客户端到web服务端 ...
- MATLAB——神经网络init初始化函数和adapt函数
- Vue 改变数组中对象的属性不重新渲染View的解决方案
Vue 改变数组中对象的属性不重新渲染View的解决方案 在解决问题之前,我们先来了解下 vue响应性原理: Vue最显著的一个功能是响应系统-- 模型只是一个普通对象,修改对象则会更新视图.受到ja ...
- Java并发(二)异步转同步
目录 前置条件:构造一个异步调用 一.使用wait和notify方法 二.使用条件锁 三.Future 四.使用CountDownLatch 五.使用CyclicBarrier 总结 在Java并发编 ...
- Zephyr的Threads
Threads介绍了一个线程的创建.调度以及删除过程.
- GIT 远程仓库:添加远程库、从远程库克隆
到目前为止,我们已经掌握了如何在Git仓库里对一个文件进行时光穿梭,你再也不用担心文件备份或者丢失的问题了. 可是有用过集中式版本控制系统SVN的童鞋会站出来说,这些功能在SVN里早就有了,没看出Gi ...
- LVDS原理及设计指南--以及衍生的B-LVDS-M-LVDS--CML-LVPECL电平等
LVDS是一种低摆幅的差分信号技术,它使得信号能在差分PCB 线对或平衡电缆上以几百Mbps的速率传输,其低压幅和低电流驱动输出实现了低噪声和低功耗. IEEE 在两个标准中对LVDS 信号 ...
- java中使用jxl读取excel中的数据
package bboss; import java.io.File; import java.io.FileInputStream; import java.io.IOException; impo ...
- Django 学习 (第五部)
表设计: from django.db import models # Create your models here. # class Foo(models.Model): # name = mod ...