Java可变参数讲解
如果实现的多个方法,这些方法里面逻辑基本相同,唯一不同的是传递的参数的个数,可以使用可变参数
可变参数的定义方法 数据类型...数组的名称,这个数组存储传递过来的参数,类似JavaScript
注意点:
(1)可变参数需要写在方法的参数列表中,不能单独定义
(2)在方法的参数列表中只能有一个可变参数
(3)方法的参数列表中的可变参数,必须放在参数最后
- score(String name, int...args)
case:
public class ChangeableArgs {
public static void main(String[] args) {
score("小明",90,80,70,90);
score("小红",90,80,70,90,100,200,300);
System.out.println(add(90,80,70,90));
System.out.println(add(90,80,70,90,100,200,300));
}
private static void score(String name, int...args) {
int result=0;
for(int i=0;i<args.length;i++)
result+=args[i];
System.out.println(name+"考了"+result+"分!");
}
private static int add(int...args) {
int result=0;
for(int i=0;i<args.length;i++)
result+=args[i];
return result;
}
}
运行截图:
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAN8AAABlCAIAAABCyqFoAAAFNUlEQVR4nO2dzWGDIBSAWcpLpvHUUTxnhN5zzxgukCXcwB7SKD8PxErg1XzfpVEQUb88UEMx82GmaZqm6fv7e3phf57GoTOmv00B49C91t9649INo5PhN1M3jPHPa3Y7dRy65fOzLk+eObfqYJfkFewfinSMsfw7aijljNVKPo1bB+4s3vrlr1RU5Bq4pUVP2rNQ+YxY+7aW326nc3LsvbtmCHUuauc4dMuJWXNu1WHDTvG4EtuL69M13GlnuLfNA3cWLTuFigfOiqVlnTS5dN+PKnY6FXvVwD6kW29d4VsvnsFjdnrfdOG0inWwV9rX+bkUDQPuEVvZbn3gV7qGYpSN1Uo6hPiBu0UsuwsP3CrK8WdZDq+UVL1xGIRL7xTnfWHq2unyG3leVffantIt+7qDru+XgrfqYMeLbhhiLXUSO+IIgTpdw0gfwMrr1CpyGoNix6Ezfd/7eW1DpE6G59RrTWBbpHq3cIduaeuOjDH9raWdUIZo71YH2dXz+53ThJ3/kXHo7GinTc4/Vm8Jmcsa7PyfWM2uMjWnaSpWPewEvWAn6OW9dn4DHOC9dh4vHD4Z7AS9YCfoBTtBL9gJemlgp5Fe7hsXcc1mIfk8rhe78K97VtI8z/P9a0m6XB+JWh2sIcyq7PQ+p690ItXEkQ/g/iWZJiXZi4/rJdhs085UNSDgn9m5w7m8/c7z/JTOj5FC0uN6cXR8XC/2djkBHjt3odrOzZa9hJqBdLEkL99vD2Bdg53FqWenHf+8D3Ok3+ltm2iy01ddTLL6l76bcpLVrN+/jDGX630NnrG9e+uxcxct7UyvFLMl1sTYzin1IIWkp53368W8lHw17YkvT3gg2JlPJTtjqqXtjMXF44HTI6txD5pycbP0lwp20djOOR4pE0Lvuuo5mfNui/x7e9Fp7CxIDTtFHb3FzQYxkflo7Mx+ouR0Abw79owjnfd/tT4cjffs4ZrQ15wyE0nWM3XjOZZImt1n9WG0xc6yaLEznWdzk4P9ziKkv2DwB6raudkKL9nyN0mkZu6uCLvqDJk0iJ0AmWAn6AU7QS/YCXrBTtALdoJesBP0outpfP4zwuNPE2NvfRi5oQeldhqXdCHhi6UYSx7n/bn0xlzKx8iN2iiyM+dNYNq5NGvOQMfH9ZLQk5EbrdBipx010zntpD/2BMKfvkV+QsfIjba0/G28J2J45fKb7PRVD5LcqPfr2WonIzeU0NLOWbp4icXMpLyczt3NPdbzZORGUxr/Nj7djicC0oHAKRDvdzJyoyWKRm6EnolXd2/4ycicGLjByI2WaBm5IVcuEk1Lxs6H1VKHMHKjKVru2Zek/F7pkaTEYHZGbuhBi53iZcu/kAf7nUU4Un8QUTpyY1fDHUvN3F0RvJBPjCwCvwIBvWAn6AU7QS/YCXrBTtALdoJesBP0UsnON81xAeemRewsN8cFnJsmLXuZOS7g9DSws9QcF3B66tlZdo4L+ARatOyH57iAD6HNE6WCc1zAiWljZ8E5LuDEqH6itDlSAs5NJTvfNMcFnBveZIJesBP0gp2gF+wEvWAn6AU7QS/YCXrBTtALdoJemvyCjpEbkEXFN5lvmOMCzk0VO98zxwWcnmp2lp/jAk5PnZa9/BwX8AlUuysqOccFfAjtRm4UmuMCToy28eyM3ICV6nYWneMCzk39/6NUco4LODe8yQS9YCfoBTtBL9gJesFO0At2gl6wE/SCnaAX7AS9YCfoBTtBL9gJesFO0At2gl6wE/SCnaAX7AS9YCfoBTtBLz9PzHBqDbKrVgAAAABJRU5ErkJggg==" alt="" />
Java可变参数讲解的更多相关文章
- java 可变参数讲解
java5中新增了可变参数,这个可变参数和C语言中的用法是差不多,但实现起来却不一样. 下面我们一起来看看吧. 其实可变参数就是一个数组 class A{ public void func(int.. ...
- Java可变参数 & Python可变参数 & Scala可变参数
Java 可变参数的特点: (1).只能出现在参数列表的最后: (2)....位于变量类型和变量名之间,前后有无空格都可以: (3).调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,在方法体 ...
- Java可变参数/可变长参数
Java可变参数/可变长参数 传递的参数不确定长度,是变长的参数,例如小例子: package demo; public class Demo { public static int sum(int ...
- 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 可变参数,把我整得够惨。。
最近在写一个功能点,用了 Java 中的可变参数,真是把我搞得够惨.. 什么是可变参数? 就是方法参数用 Object... args 三个点形式,一个参数可以接收多个参数. 实际的代码就不帖了,来看 ...
随机推荐
- 4.openstack之mitaka搭建glance镜像服务
部署镜像服务 一:安装和配置服务 1.建库建用户 mysql -u root -p CREATE DATABASE glance; GRANT ALL PRIVILEGES ON glance.* T ...
- 【leetcode】Remove Element (easy)
Given an array and a value, remove all instances of that value in place and return the new length. T ...
- [C#]Datatable和json互相转换操作
#region DataTable 转换为Json字符串实例方法 /// <summary> /// GetClassTypeJosn 的摘要说明 /// </summary> ...
- Bootstrap弹窗插件(拟态框)关闭后回调函数
$(function(){ $('#questionnaire').on('hidden.bs.modal',function(){ //清除缓存方法 }); }); 事件 Bootstrap 的模态 ...
- oc弹出框显示提示消息
- (void)ShowHUDTitle:(NSString *)title andDelay:(NSTimeInterval)delayTime { if (HUD) { [HUD removeFr ...
- swift选择类或结构体
按照通用的准则,当符合一条或多条以下条件时,请考虑构建结构体: 结构体的主要目的是用来封装少量相关简单数据值. 有理由预计一个结构体实例在赋值或传递时,封装的数据将会被拷贝而不是被引用. ? 任何在结 ...
- September 20th 2016 Week 39th Tuesday
Failure is not fatal, but failure to change might be. 失败并不致命,但无法改变却可能是致命的. I need change, but it see ...
- C#冒泡排序
C#最简单的冒泡排序,需要的朋友可作参考: 思路: 使用两个for循环,就可以遍历数组,这样就可以确保每个数组元素都被使用 对比前后两个数,将小的数字和大的交换位置,引入一个临时变量temp来进行交换 ...
- eclipse 中添加工程 Some projects cannot be imported because they already exist in the workspace
第一次从外部文件导入HelloWorld工程到workspace目录中,成功. 删除后,再次从外部导入workspace目录提示 Some projects cannot be imported be ...
- eclipse上安装abator插件
下面是我看了网上的有一点需要强调:网址 http://ibatis.apache.org/tools/abator然后全选,然后是==>重启就好了 eclipse上安装abator插件参考:ht ...