——————————————————数组——————————————————
1.静态初始化——常见问题
定义方法:int [] arr=new int[];
或者 int arr[]=new int[];
arr=NULL;//NUllPointException——空指针异常
//int [] arr=new int[]{1,3,5,7,8};
int[] arr=new int [3];
System.out.println(arr[3]);语法没有错误,但是在编译的时候数组还没建立。
在执行的时候,我们会看到这样的异常:ArrayIndexOutOfBoundsException:3数组角标越界
操作数组时,访问到了数组中不存在的角标
//数组的操作
//数组的操作,获取数据的元素,通常用到遍历。
class ArrayDemo
{
public static void main(String[] args)
{ int arr[]=new int[3];
for(int i=0;i<3;i++)
{
System.out.println("arr["+i+"]="+arr[i]);
}
}
}
//数组中有一个属性可以直接获取到元素的个数和长度
//使用方式:数组名称.length=
class ArrayDemo
{
public static void main(String[] args)
{ int arr[]=new int[3];
for(int i=0;i<3;i++)
{
System.out.println("arr["+i+"]="+arr[i]);
}
System.out.println("length="+arr.length);
}
}
//累加
练习:定义功能用于打印数组中的元素,元素间用逗号隔开
class ArrayDemo
{
public static void main(String[] args)
{ int arr[]={1,3,5,7,9};
for(int i=0;i<arr.length;i++)
{
if(i!=arr.length-1)
System.out.print(arr[i]+",");
else
System.out.println(arr[i]);
}
}
}
//数组的操作
//获取数组的最大值,最小值
class ArrayDemo
{
public static void main(String[] args)
{ int arr[]={5,1,6,4,2,8,9};
Compare(arr);
}
public static void Compare(int [] arr)
{int max,min;
max=min=arr[0];
for(int i=1;i<arr.length;i++)
{
if(max<arr[i])
max=arr[i];
if(min>arr[i])
min=arr[i];
}
System.out.println("max="+max);
System.out.println("min="+min);
}
}注意:调用的函数应该放到类中。另:public后面的类型与返回值有关。这与C++同。