数组

数组:可以存储多个元素并且多个元素是同一种类型的容器。

数组的定义:数组类型[ ] 数组名;  eg  int[ ] a;定义了一个int类型的数组变量a

                     数组类型  数组名[ ];  eg  int a[ ];定义了一个int类型 变量a数组

数组的初始化:

            1,静态初始化:给定数组中的元素值,数组的长度由系统给定,

            2,动态初始化:给定数组的长度,数组中的元素值由系统默认给定。

动态初始化格式:数组类型[]  数组名=new 数据类型[数组长度];eg:int[ ] arr=new int[3];

静态初始化:原始格式:数组类型[ ] 数组名称=new 数组类型[ ] {元素1,元素2,元素3,,,};

                                    eg:int[] arr = new int[]{1,2,3} ;

                     简写格式:数据类型[ ] 数组名称={元素1,元素2,元素3,,,};

                                    eg:int[] arr = {1,2,3} ;

不可以动静结合,要么给定数组元素要么给定数组长度

获取数组中的元素:通过数组名称获取,格式:数组名称[索引值],数组的索引从0开始,最大的索引等于数组长度-1;

数组中经常出现的异常:ArrayIndexOutOfBoundsException:为数组角标越界异常,出现原因:访问数组中不存在索引值

                           解决方案:观察数组中到底有多少索引值,为数组长度减一;

                            NullPointerException:   空指针异常(实际开发中该异常最多)  出现原因:对象为null,而开发者还要去使用对象就会出现该错误,

                             解决方案:给某个对象进行非空判断,防止程序空指针异常。

                      int[] arr2 = null ;        //arr2对象是空对象
             if(arr2!=null) {        //给对象做非null判断
System.out.println(arr2[0]);
       }

                            OOM异常:OutOfMemory:内存溢出   Android 解决加载大量图片的问题:图片加载器:ImageLoader等等数组中最值的应用 :定义一个数组,静态初始化求数组中的最大值或者最小值

eg:求取最大值1,定义一个数组, 静态初始化    2,定义 一个参照物,分别和数组中的其他元素进行比较,如果后面的元素大于参照物 ,将后面最大参照物 作为最大值      3,输出      

public static void main(String[] args) {

//定义一个数组
int[] arr = {13,98,24,30,10} ;

//定一个参照物,假设参照物就是最大值
int max = arr[0] ;

//从1开始遍历其他元素
for(int x = 1 ; x < arr.length  ; x ++) {
//获取每一个元素
//依次和参照物进行比较,如果后面的元素都大于参照物,将后面作为参照物作为最大值
if( arr[x] > max) {
//将arr[x]赋值给max
max = arr[x] ;
}
}
//输出
System.out.println("最大值是:"+max);
System.out.println("------------------------------");

int max2 = max(arr) ;
System.out.println("最大值是:"+max2);
}
/**
* 定一个方法
* 两个明确:
* 1)明确返回值类型: int类型
* 2)明确参数类型:int[] arr
*/
public static int max(int[] arr) {
//定义参照物
int max = arr[0] ;

//遍历其他元素
for(int x = 1 ; x < arr.length ; x ++) {
//获取到每一个元素,分别和参照物进行比较,如果大了,就作为最大值进行继续比较
if(arr[x] > max) {
max = arr[x] ;
}
}
return max ;
}          

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值