一:

在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可变参数长度的更多相关文章

  1. Java可变参数/可变长参数

    Java可变参数/可变长参数 传递的参数不确定长度,是变长的参数,例如小例子: package demo; public class Demo { public static int sum(int ...

  2. Java可变参数 & Python可变参数 & Scala可变参数

    Java 可变参数的特点: (1).只能出现在参数列表的最后: (2)....位于变量类型和变量名之间,前后有无空格都可以: (3).调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,在方法体 ...

  3. java可变参数

    Java1.5增加了新特性:可变参数:适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理.注意:可变参数必须位于最后一项.当可变参数个数多余一个时,必将有一个不是最后一项,所以只支持 ...

  4. Java 可变参数列表

    1.可变参数列表的简单实现 当调用方法时,方法的参数个数或类型未知时,称其为可变参数列表.在以前的Java代码中,可以使用Object数组来实现这样的功能.因为,所有的类都是直接或间接继承于Objec ...

  5. Java 可变参数

    java1.5增加了新特性:可变参数:适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理.注意:可变参数必须位于最后一项.当可变参数个数多余一个时,必将有一个不是最后一项,所以只支持 ...

  6. Java可变参数以及一个简单应用

    可变参数: Java1.5增加了新特性:可变参数:适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理. 注意:可变参数必须位于最后一项. 原因:当可变参数个数多余一个时,必将有一个不 ...

  7. 坑爹的 Java 可变参数,把我整得够惨。。

    最近在写一个功能点,用了 Java 中的可变参数,真是把我搞得够惨.. 什么是可变参数? 就是方法参数用 Object... args 三个点形式,一个参数可以接收多个参数. 实际的代码就不帖了,来看 ...

  8. Java可变参数方法

    概念: jdk5.0出现的新特性.将同一个类中,多个方法名相同.参数类型相同.返回类型相同,仅仅是参数个数不同的方法抽取成一个方法,这种方法称为可变参数的方法 好处: 提高代码的重用性和维护性 语法: ...

  9. Java可变参数与Collections工具类使用了解

    今天发现jdk1.5后增加了个可变参数,以前还一直不晓得 public static void main(String[] args) { System.out.println(getNum(1,2, ...

随机推荐

  1. Bash On Windows上安装JDK

    1. 引言 由于实习生转正,公司给配了一台新电脑,配置不用多说,16G内存,i7-7700的CPU,128SSD的系统盘,1T的机械硬盘,虽然只有一个破核显.对于我个人而言,最重要的是系统从Windo ...

  2. div放在li标签中,无法撑开li标签的问题

    作为一个前端菜鸟,我又碰到问题了,今天把div放到li标签中,发现div并没有把li标签撑开,而是在li标签边界之外,具体情况如下图所示: 那么,怎样才能达到预期的效果(每个li中放置一个div标签, ...

  3. 控件_TimePicker

    import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view ...

  4. js 数组的操作

    js数组的操作 用 js有很久了,但都没有深究过js的数组形式.偶尔用用也就是简单的string.split(char).这段时间做的一个项目,用到数组的地方很多,自以为js高手的自己居然无从下手,一 ...

  5. go标准库的学习-crypto/sha256

    参考:https://studygolang.com/pkgdoc 导入方式: import "crypto/sha256" sha256包实现了SHA224和SHA256哈希算法 ...

  6. ethereum/EIPs-712 Ethereum typed structured data hashing and signing

    https://github.com/ethereum/EIPs/blob/master/EIPS/eip-712.md eip title author discussions-to status ...

  7. Qt Creator中根据为Windows系统还是Linux系统对源码进行条件编译

    方法1: 在.h和.cpp文件中,针对需要不同平台编译的代码:添加上如下的条件编译指令: #ifdef 标识符 程序段1 #else 程序段2 #endif 举例说明如下: //Windows系统包含 ...

  8. 学习测试框架Mocha

    学习测试框架Mocha 注意:是参考阮老师的文章来学的.虽然阮老师有讲解,但是觉得自己敲一遍,然后记录一遍效果会更好点.俗话说,好记性不如烂笔头. Mocha 是javascript测试框架之一,可以 ...

  9. 小程序 获取微信小程序的源码

    1.微信小程序是以wxapkg可执行文件的形式存在本地的 2.网上有工具可以把wxapkg文件还原成源代码: https://github.com/qwerty472123/wxappUnpacker ...

  10. Apache IOUtils的使用

    IOUtils 与 FileUtilsCommons IO 是 apache 的一个开源的工具包,封装了 IO操作的相关类,使用 Commons IO 可以很方便的读写文件 commons.jar 包 ...