函数的参数传值
- 当一个函数方法的参数是基本数据类型的时候,执行函数方法并传入主函数中的变量,这只是对方法中的参数进行赋值,方法执行之后并不会改变主方法中的变量的值。
- 当一个函数方法的参数是数组或者为引用数据类型的时候,执行函数方法,传入的是主函数变量的地址,改变的是变量本身,方法执行之后,主函数中的变量要发生相应的变化。
可变参数列表的参数传值
- 什么是可变参数列表
public class ArgsDemo1{
public void search(int n,int...a){
boolen flag=false;
for(int a1:a){ //增强for循环,将a的值全部赋值给a1
if(a1==n){
flag=true;break;
}
if(flag){
System.out.println("找到了!"+n);
}else{
System.out.println("没找到!"+n);
}
}
}
//int..a 就是可变参数列表,一个方法只能有一个可变参数列表,且只能放在方法参数的最后的位置
//可变参数列表和数组是可以兼容的,意思就是可以将数组最为可变参数穿入
public static void main(String[] args){
ArgsDemo1 ad1= new ArgsDemo1();
ad1.search(1,1,2,3,4);
int a[]={1,2,3,4};
ad1.search(1,a);
//这两个方法的调用是一样的意思。
}
- 带可变参数的重载方法的优先级是最低的
public class VariableParameter {
public int plus(int a,int b)
{
System.out.println("不调用可变参数的方法");
return a+b;
}
public int plus(int...a)
{
int sum=0;
for(int a1:a) {
sum=sum+a1;
}
System.out.println("调用了可变参数的方法");
return sum;
}
public static void main(String[] args) {
VariableParameter vParameter=new VariableParameter();
System.out.println("和为:"+vParameter.plus(1,2));
}
}
// 输出结果为 不调用可变参数的方法 和为:3
文档注释可以用来生成文档
方法如下