java:可变参数(转载)
http://12477787.blog.51cto.com/12467787/1887843
Java在1.5之后允许方法使用可变参数,可变参数的好处在于:它允许传递0个或者多个参数。比如原来有一段代码下载如下:
Java代码  
- public class Test { 
- public static void main(String[] args) { 
- test(); 
- test(new String[]{"a"}); 
- test(new String[]{"a", "b"}); 
- } 
- private static void test() { 
- System.out.println(“[]”); 
- } 
- private static void test(String[] args) { 
- System.out.println(Arrays.toString(args)); 
- } 
- } 
使用可变参数之后的代码下载如下:
Java代码  
- public class Test { 
- public static void main(String[] args) { 
- test(); 
- test(new String[]{"a"}); 
- test(new String[]{"a", "b"}); 
- } 
- private static void test(String... args) { 
- System.out.println(Arrays.toString(args)); 
- } 
- } 
可见,可变参数的功能更加强大,语意包含的范围更广。 
我们知道,在Java中,除了8种基本类型之外一切都是类。那么可变参数到底是个什么类呢?来,用代码下载验证下!
Java代码  
- public class Test { 
- public static void main(String[] args) { 
- whatClass(); 
- whatClass1(); 
- } 
- private static void whatClass(String... args) { 
- System.out.println(args.getClass()); 
- System.out.println(new String[]{}.getClass()); 
- } 
- private static void whatClass1(int... args) { 
- System.out.println(args.getClass()); 
- System.out.println(new int[]{}.getClass()); 
- } 
- } 
上面代码的运行结果是: 
class [Ljava.lang.String;  
class [Ljava.lang.String;  
class [I  
class [I
java:可变参数(转载)的更多相关文章
- Java可变参数 & Python可变参数 & Scala可变参数
		Java 可变参数的特点: (1).只能出现在参数列表的最后: (2)....位于变量类型和变量名之间,前后有无空格都可以: (3).调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,在方法体 ... 
- Java可变参数/可变长参数
		Java可变参数/可变长参数 传递的参数不确定长度,是变长的参数,例如小例子: package demo; public class Demo { public static int sum(int ... 
- 坑爹的 Java 可变参数,把我整得够惨。。
		最近在写一个功能点,用了 Java 中的可变参数,真是把我搞得够惨.. 什么是可变参数? 就是方法参数用 Object... args 三个点形式,一个参数可以接收多个参数. 实际的代码就不帖了,来看 ... 
- java可变参数
		Java1.5增加了新特性:可变参数:适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理.注意:可变参数必须位于最后一项.当可变参数个数多余一个时,必将有一个不是最后一项,所以只支持 ... 
- Java 可变参数列表
		1.可变参数列表的简单实现 当调用方法时,方法的参数个数或类型未知时,称其为可变参数列表.在以前的Java代码中,可以使用Object数组来实现这样的功能.因为,所有的类都是直接或间接继承于Objec ... 
- Java 可变参数
		java1.5增加了新特性:可变参数:适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理.注意:可变参数必须位于最后一项.当可变参数个数多余一个时,必将有一个不是最后一项,所以只支持 ... 
- Java可变参数以及一个简单应用
		可变参数: Java1.5增加了新特性:可变参数:适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理. 注意:可变参数必须位于最后一项. 原因:当可变参数个数多余一个时,必将有一个不 ... 
- java可变参数长度
		一: 在python中 有可变参数*args和万能参数**args参数分别为列表和字典.在java中也有类似的可变参数列表.不过传递进去的是可变参数数组. package com.company; p ... 
- Java可变参数与Collections工具类使用了解
		今天发现jdk1.5后增加了个可变参数,以前还一直不晓得 public static void main(String[] args) { System.out.println(getNum(1,2, ... 
随机推荐
- 百度地图API 根据地址查询经纬度
			html页面.引用上API: <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title> ... 
- windows服务-监视文件
			配置一个xml其中有是否开启监视.监视时间.监视路径. FileSystemWatcher watcherName = new FileSystemWatcher(); watcherName.Inc ... 
- Hadoop体系所有组件默认端口列表
			Why? Hadoop集群组件太多,默认端口无法记住,有事后需要查看,就在这里罗列下这里包含我们使用到的组件:HDFS, YARN, Hbase, Hive, ZooKeeper。 What? 端口 ... 
- BZOJ 3640: JC的小苹果
			3640: JC的小苹果 Time Limit: 15 Sec Memory Limit: 256 MBSubmit: 425 Solved: 155[Submit][Status][Discus ... 
- Union和Concat的区别,以及它们的速度 (C# Linq)
			原文发布时间为:2011-06-29 -- 来源于本人的百度文章 [由搬家工具导入] Union 会去重复后合并。而Contact不去重直接合并。 所以Contact当然比较快了。所以如果你不用去重的 ... 
- .NET泛型编程 性能提升工具 List<T>
			原文发布时间为:2009-10-27 -- 来源于本人的百度文章 [由搬家工具导入] 结论 .NET 2.0中的泛型是强有力的,你写的代码不必限定于一特定类型,然而你的代码却能具有类型安全性。泛型的 ... 
- 用来武装Firebug的十四款Firefox插件
			原文发布时间为:2010-04-24 -- 来源于本人的百度文章 [由搬家工具导入] 如果你是一名Web设计师,Firebug想必不会陌生,作为一款Firefox插件,它可能是网站前端开发最有用的工具 ... 
- 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---31
			以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下: 
- 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---15
			以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下: 
- SDOI2017round1酱油记day0
			嗯... 现在是21:12...准备睡了. 睡前写下day0一天如何过的: 早上5点起床到教室早自习,迷迷糊糊的宣誓,背东西,英语听写: 都停课了为什么还要上早自习! 我!想!去!机!房! OI才是我 ... 
