所有的引用类型变量,都可以赋值为一个null值。但是代表其中什么都没有。
数组必须进行new初始化才能使用其中的元素。
如果只是赋值了一个null,没有进行new创建,那么将会发生:
空指针异常NullPointerException
原因:忘了new解决:补上new
如何获取数组的長度,格式:数組名称. length
你将会得到一个int数字,代表数組的长度。
数組一旦创建,程序运行期囘,长度不可改変
数组的遍历
package cn.itcast.day05.demo01.demo02;
//数组的遍历
public class Demo04Arry {
public static void main(String[] args) {
int array[]={10,20,30,35,40,50};
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]);
}
}
}
获取一个数组中最大值
package cn.itcast.day05.demo01.demo02;
//获取一个数组中的最大值。
public class Demo05ArrayMax {
public static void main(String[] args) {
int array[]={10,20,100,50,70};
int max = array[0];
for (int i=1;i<array.length;i++){
if (array[i]>max){
max=array[i];
}
}
System.out.println("最大值是"+max);
}
}
获取一个数组中最小值
package cn.itcast.day05.demo01.demo02;
//获取一个数组中的最小值
public class Demo05ArrayMin {
public static void main(String[] args) {
int array[]={10,20,30,50,-20,100};
int min=array[0];
for (int i =1;i<array.length;i++){
if(min>array[i]){
min=array[i];
}
}
System.out.println("最小值为"+min);
}
}
数组元素的反转
package cn.itcast.day05.demo01.demo02;
/*
数组元素的反转
本来的样子{10,20,30,40,50,60}
之后的样子{60,50,40,30,20,10}
*/
public class Demo07ArrayReverse {
public static void main(String[] args) {
int array[] = {10, 20, 30, 40, 50, 60};
//遍历打印数组本来的样子
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]);
}
System.out.println("=================");
/*
初始化语句
int min=0,int max=array.length-1;
条件判断式
int min< int max;
步进表达式
min++,max--;
循环体:用第三个变量倒手
*/
for (int min = 0, max = array.length - 1; min < max; min++, max--) {
int temp = array[min];
array[min] = array[max];
array[max] = temp;
}
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]);
}
}
}
数组作为方法参数
package cn.itcast.day05.demo01.demo04;
public class Demo01ArrayParam {
public static void main(String[] args) {
int[] array = {10, 20, 30, 40, 50, 60};
printArray(array);
System.out.println("=========A=========");
printArray(array);
}/*
方法的三要素:
返回值类型:void
方法名称:printArray
参数列表:数组 int array[]
*/
public static void printArray(int[] array) {
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]);
}
}
}
数组作为方法返回值
package cn.itcast.day05.demo01.demo04;
/*
一个方法可以有0,1,多个参数,但只能有0、1个返回值
如果希望一个方法中产生了多个数据进行返回,
就用一个数组当返回值。
数组作为方法参数传递进去的其实是地址值
数组作为返回值是传递进去的也是地址值
*/
public class Demo02ArrayReturn {
public static void main(String[] args) {
int[] result= calculate(10,20,30);
System.out.println("总和是"+result[0]);
System.out.println("平均数"+result[1]);
}
public static int[] calculate(int a, int b, int c){
int sum =a+b+c;
int avg =sum/3;
/*
需要一个数组来保存多个结果
int array[]=new int[2];
array[0]=sum;
array[1]=avg;
*/
int array[]={sum,avg};
return array;
}
}