Java中的可变参数

Java在1.5之后允许方法使用可变参数,可变参数的好处在于:它允许传递0个或者多个参数。比如原来有一段代码下载如下: 
Java代码   收藏代码
  1. public class Test {    
  2.     public static void main(String[] args) {    
  3.         test();    
  4.         test(new String[]{"a"});    
  5.         test(new String[]{"a""b"});    
  6.     }    
  7.     
  8.     private static void test() {    
  9.         System.out.println(“[]”);    
  10.     }    
  11.     
  12.     private static void test(String[] args) {    
  13.         System.out.println(Arrays.toString(args));    
  14.     }    
  15. }    

使用可变参数之后的代码下载如下: 
Java代码   收藏代码
  1. public class Test {    
  2.     public static void main(String[] args) {    
  3.         test();    
  4.         test(new String[]{"a"});    
  5.         test(new String[]{"a""b"});    
  6.     }    
  7.     
  8.     private static void test(String... args) {    
  9.         System.out.println(Arrays.toString(args));    
  10.     }    
  11. }    

可见,可变参数的功能更加强大,语意包含的范围更广。 
我们知道,在Java中,除了8种基本类型之外一切都是类。那么可变参数到底是个什么类呢?来,用代码下载验证下! 
Java代码   收藏代码
  1. public class Test {    
  2.     public static void main(String[] args) {    
  3.         whatClass();    
  4.         whatClass1();    
  5.     }    
  6.     
  7.     private static void whatClass(String... args) {    
  8.         System.out.println(args.getClass());    
  9.         System.out.println(new String[]{}.getClass());    
  10.     }    
  11.     
  12.     private static void whatClass1(int... args) {    
  13.         System.out.println(args.getClass());    
  14.         System.out.println(new int[]{}.getClass());    
  15.     }    
  16. }    

上面代码的运行结果是: 
class [Ljava.lang.String;  
class [Ljava.lang.String;  
class [I  
class [I 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值