形参可变:在最后一个形参后面加...表示该形参可以接收多个参数值,多个参数值被当作数组传入。长度可变的形参只能放在形参列表的最后,而且只能含有一个长度可变的形参。
package com;
public class Text9 {
public static void fun2(int a,String[] s)
{
for(String iter:s)
{
System.out.println(iter);
}
System.out.println(a);
}
public static void fun(int a,String ...str)//等价与String[] str,实际上相当于一个数组
{
//str被当成数组
for(String temp:str)
{
System.out.println(temp);
System.out.println(a);
}
}
public static void main(String[] args)
{
fun(3,"疯狂java讲义","找工作好难");
fun2(5,new String[]{"好工作难找啊","疯狂android讲义"});//可见第一种比第二种更加简易
}
}
java中的变量分为两种,一种是成员变量,一种是局部变量,成员变量也就是类的属性,而局部变量也就是形参、方法里面定义的变量。成员变量定义的时候系统会默认给它初始化。但是类的属性定义的时候也可以给它初始化。(这个跟C++中的不一样)。局部变量除了形参以外,其他必须显式初始化。
一个类里面不能有两个同名的成员变量,即使一个是实例变量,一个是类变量(加static)也不行。
成员变量是分配在堆内存中的,需要垃圾回收机制回收,而局部变量是分配在栈中的,它随着方法的结束而结束,不需要垃圾回收机制的回收。所以不是