007-Java可变个数形参重载【数组和...】

重载方法时,可变个数形参的方法有两种方式

  • 数组重载
  • ...重载

对两种方法,其实是一致的,示例如下:

 1 public class MethodArgsTest {
 2     //可变个数形参的格式:数据类型... 形参名
 3     public void show(String ... strs) {
 4         //对String...strs传入的参数,将strs当成数组,数组怎么使用就怎么使用。
 5         //可变形参个数的方法的形参中,必须声明在末尾 show(int i, String...strs)可以,show(String...strs, int i)则不行
 6         //可变形参个数的方法的形参中,最多只能声明一个可变形参
 7     }
 8 //    数组
 9     public void show(String[] str) {
10
11     }
12
13     public static void main(String[] args) {
14         MethodArgsTest test = new MethodArgsTest();
15         test.show("aa", "bb", "cc", "dd");
16     }
17 }

 

按照如上代码的方式,写出

show(String ... strs)
show(String[] str)会提示如下的错误:



原文地址:https://www.cnblogs.com/Sinkinghost/p/11111806.html

时间: 2024-10-28 22:30:03

007-Java可变个数形参重载【数组和...】的相关文章

可变个数形参

1 package com.cnblogs.java; 2 /* 3 * 可变个数形参的使用方法 4 * 1.格式:对于方法的形参,数据类型 ... 形参名 5 * 2.可变个数的形参的方法与同名的方法之间构成重载 6 * 3.可变个数的形参方法在调用时,可以有从0到多个参数 7 * 4.使用可变个数形参的方法与方法的形参是数组的使用方法一致. 8 * 一致到认为方法③和⑤是同一个方法的地步, 9 * 但是方法三是可变个数形参,能包括方法①和②,①②注释掉则自动调用③ 10 * 5.若一个方法中

java可变参数方法重载的注意事项

1.可变参数方法与数组参数方法重载 public class MethodParams{ //带可变参数的方法 public void hello(String ...params) { System.out.println("执行带可变参数的方法,参数个数为:" + params.length); } //带数组参数的方法 public void hello(String[] params) { System.out.println("执行带数组参数的方法,数组长度为:&q

JAVA学习--可变个数的形参的方法

* 可变个数的形参的方法:  * 1.格式:对于方法的形参: 数据类型 ... 形参名  * 2.可变个数的形参的方法与同名的方法之间构成重载  * 3.可变个数的形参在调用时,个数从0开始,到无穷多个都可以.  * 4.使用可变多个形参的方法与方法的形参使用数组是一致的.  * 5.若方法中存在可变个数的形参,那么一定要声明在方法形参的最后.  * 6.在一个方法中,最多声明一个可变个数的形参. public class TestArgs { public static void main(S

JDK新特性之可变个数的形参的方法

可变个数的形参的方法:1.格式:对于方法的形参来说:数据类型...形参名2.可变个数的形参的方法与同名的方法之间可以构成重载3.可变个数的形参在调用时,个数从0开始,到无穷都可以(在调用这个方法时,sayHello后的括号里输入几个值都可以,可以输入0个也可以无穷个)4.使用可变多个形参的方法与方法的形参使用数组是一致的甚至是一个方法,使用要不同的名称5.若方法中存在可变个数的形参,那么一定要声明在方法形参之后(如代码中的sayHello(int i,String... args)中的int是方

可变个数的形参的方法

可变个数的形参的方法: 1.格式:对于方法的形参: 数据类型 ... 形参名 2.可变个数的形参的方法与同名的方法之间构成重载 3.可变个数的形参在调用时,个数从0开始,到无穷多个都可以. 4.使用可变多个形参的方法与方法的形参使用数组是一致的. 5.若方法中存在可变个数的形参,那么一定要声明在方法形参的最后. 6.在一个方法中,最多声明一个可变个数的形参. //如下四个方法构成重载 //在类中一旦定义了重载的可变个数的形参的方法以后,如下的两个方法可以省略 // public void say

java可变参数Varargs

http://www.cnblogs.com/shishm/archive/2012/01/31/2332656.html J2SE 1.5提供了“Varargs”机制.借助这一机制,可以定义能和多个实参相匹配的形参.从而,可以用一种更简单的方式,来传递个数可变的实参.本文介绍这一机制的使用方法,以及这一机制与数组.泛型.重载之间的相互作用时的若干问题. 到J2SE 1.4为止,一直无法在Java程序里定义实参个数可变的方法——因为Java要求实参(Arguments)和形参(Parameter

【Simple Java】Java可变参数举例

什么是Java可变参数 可变参数是Java 1.5引入的一个特性,它允许一个方法接受任意数量的参数. package simplejava; public class Q25 { public static void print(String... s) { for (String a : s) System.out.println(a); } public static void main(String[] args) { print("a"); print("a"

3.键盘输入10个数,放到数组中,(1)去除该数组中大于10的数 (2)将该数组中的数字写入到本地文件number.txt中

package cn.it.text; import java.io.FileWriter; import java.io.IOException; import java.util.Scanner; /* * 3.键盘输入10个数,放到数组中 (1)去除该数组中大于10的数 (2)将该数组中的数字写入到本地文件number.txt中 */ public class Test3 { public static int[] arr = new int[10]; public static void

【华为OJ】201301 JAVA 题目0-1级 将数组分为相等的两组

描述:  编写一个函数,传入一个int型数组,返回该数组能否分成两组,使得两组中各元素加起来的和相等,并且,所有5的倍数必须在其中一个组中,所有3的倍数在另一个组中(不包括5的倍数),能满足以上条件,返回true:不满足时返回false. 知识点: 语言基础,字符串,循环,函数,指针,枚举,位运算,结构体,联合体,文件操作,递归    题目来源: 内部整理  练习阶段: 初级  运行时间限制: 10Sec 内存限制: 128MByte 输入: 输入输入的数据个数 输入一个int型数组 输出: 返