jdk1.5新特性2之动态参数列表

一 概念

 

Java类型后面三个点如(String... strs)是从Java1.5开始对方法参数支持一种新写法,叫可变长度参数列表,其语法就是类型后跟三个点,表示此处接受的参数为0到多个Object类型的对象或者是一个Object[]。

 

 

 

二 例子

 

public class test
{
 public static void main(String[] args)
 {
  testVarchar("xy", "xy2", "xy3");
  testVarchar(new String[]{"xy", "xy2", "xy3"});
 }

 public static void testVarchar(String... strings)
 {
  for (int i = 0; i < strings.length; i++)
  {
   System.out.print(strings[i]);
  }
  System.out.print("\n");
 }

}

结果为

xyxy2xy3
xyxy2xy3

 

 

三 注意点

 

值得注意的是动态参数列表必须放在方法签名的最后一个

add(int i,int... nums); // 正确

add(int... nums,int i); // 错误

 

时间: 2024-10-29 18:09:37

jdk1.5新特性2之动态参数列表的相关文章

jdk1.5新特性5之枚举之枚举类型的应用

  一 简单应用 package cn.xy.Enum; public enum TrafficLamp {  RED,GREEN,YELLOW; } TrafficLamp red = TrafficLamp.RED; System.out.println(red); System.out.println(red.name()); System.out.println(red.ordinal()); System.out.println(TrafficLamp.valueOf("YELLOW&

JDK1.5新特性一览

"JDK1.5"(开发代号猛虎)的一个重要主题就是通过新增一些特性来简化开发,这些特性包括泛型,for-each 循环,自动装包/拆包,枚举,可变参数, 静态导入 .使用这些特性有助于我们编写更加清晰,精悍,安全的代码. 下面我们简单介绍一下这些新特性. 1.泛型(Generic) C++通过模板技术可以指定集合的元素类型,而Java在1.5之前一直没有相对应的功能.一个集合可以放任何类型的对象,相应地从集合里面拿对象的时候我们也不得不对他们进行强制得类型转换.猛虎引入了泛型,它允许指

JDK1.5新特性介绍

"JDK1.5"(开发代号猛虎)的一个重要主题就是通过新增一些特性来简化开发,这些特性包括泛型,for-each 循环,自动装包/拆包,枚举,可变参数, 静态导入 .使用这些特性有助于我们编写更加清晰,精悍,安全的代码. 下面我们简单介绍一下这些新特性. 1.泛型(Generic) C++通过模板技术可以指定集合的元素类型,而Java在1.5之前一直没有相对应的功能.一个集合可以放任何类型的对象,相应地从集合里面拿对象的时候我们也不得不对他们进行强制得类型转换.猛虎引入了泛型,它允许指

Windows Phone 8.1新特性:控件之列表选择控件

本篇我们来介绍Windows Phone 8.1 新特性中的列表选择控件. 在Windows Phone 8 时代,大家都会使用 LongListSelector 来实现列表选择控件,对数据进行分组显示.比如通讯录中,按照名字首字母进行分组,点击分组标题后跳转到该标题对应的分组. 而Windows Phone 8.1 中会利用 ListView和 SemanticZoom 来实现,下面我们来看看实现过程. 首先我们来认识一下ListView 和 SemanticZoom: ListView 从字

MySQL8.0新特性之持久化全局参数修改

PS: 本文内容基于MySQL8.0.0版本,由于目前才Release了第一个开发版本,不排除后续行为会发生变化 相信很多朋友都有这样的体验,在实例启动的时候动态修改了某些配置,但是忘了修改配置文件,结果实例一重启修改就丢失了.或者对于诸如部署在云上的业务(例如RDS),通常用户是没有修改配置文件的权限的,这导致配置的设定不够灵活.从MySQL8.0开始,大家不用担心这个问题了,用户可以选择性的将配置进行持久化. 对应的Worklog: WL#8688 启用这个功能,使用特定的语法SET PER

深入浅出ES6新特性之函数默认参数和箭头函数_javascript技巧

1.函数参数的默认值 ES5中不能直接为函数的参数指定默认值,只能通过以下的变通方式: 从上面的代码可以看出存在一个问题,当传入的参数为0或者false时,会直接取到后面的值,而不是传入的这个参数值. 那怎么解决呢?对于上图的代码,可以通过判断是否传入了num参数,没有就用默认值: 这种做法还是很麻烦的,而ES6则直接在参数定义里面设置函数参数的默认值,而且不用担心传入参数是0或者false会出错了: 2.箭头函数 箭头函数用 => 符号来定义. 箭头函数相当于匿名函数,所以采用函数表达式的写法

jdk1.5新特性1之静态导入

调用Math类的静态方法,每次都要写Math点方法. public static void main(String args) {  system.out.print(Math.max(3,6));  system.out.print(Math.min(3.6)); }   JDK1.5支持静态导入 import static java.lang.Math.max; public static void main(String args) {  system.out.print(max(3,6)

jdk1.5新特性5之枚举之模拟枚举类型

  模拟方式一   package cn.xy.Enum; public class TrafficLampEasy {  private int time;  public final static TrafficLampEasy REDLAMP = new TrafficLampEasy(20);  public final static TrafficLampEasy GREENLAMP = new TrafficLampEasy(20);  public final static Tra

jdk1.5新特性4之自动装箱和自动拆箱与享元模式

  一 基本概念 1 装箱 把基本类型用它们相应的引用类型包装起来,使其具有对象的性质.如int-->Integer,float-->Float. 自动装箱 Integer a = 100,编译器调用的是static Integer valueOf(int i)                2 拆箱 和装箱相反,将引用类型的对象简化成值类型的数据 自动拆箱 int b = new Integer(100); int c = a +2;   二 是否相等 例一 Integer a = new