JAVA基础-数组的详解

一.数组的概念

新建数组

//int数组在未赋值时,元素值为0
int[] arry=new int[3];
//String数组在未赋值时,元素值为null
String[] arry1=new String[3];
//char数组在未赋值时,元素值为\u0000
char[] arry2=new char[3];
//float数组在未赋值时,元素值为0.0
float[] arry3=new float[3];

二.数组定义的格式

1.动态初始化

int[] arry=new int[3];

2.静态初始化

静态初始化完整版

int[] arry=new int[]{1,25,60};

静态初始化省略版

int[] arry={25,60,33};

三.访问数组元素进行获取

访问数组元素进行获取

//新建数组
int[] arry={15,25,30};
//获取数组元素,改变相应的索引值
System.out.print("arry[0]");

访问数组元素进行赋值

//新建数组
int[] arry=new int[3];
//数组赋值
arry[0]=3;

四.JAVA的内存划分

java的内存划分为五个部分:栈,堆,方法区,本地方法栈,寄存器

如代码int[] arry=new int[3];在运行时,java内存分配如下图

假设堆中new int[3]的地址为0x777,则将0x777赋给int[] arry,使其指向堆中的new int[3]

五.数组常见问题

1.数组越界java.lang.ArrayIndexOutOfBoundsException

如下图代码

    int[] arry=new int[2];
        System.out.println(arry[2]);

因为arry数组不存在arry[2],所以出现数组越界异常

2.空指针异常

   int[] arry=null;
   System.out.println(arry[0]);

六.数组遍历

int[] arry=new int[]{1,2,3,4,5}

for(int i=0;i<=arry.length;i++){
System.out.print("arry[i]")
}

七.数组的相关操作

1.数组中寻找最大值

  int[] arry={66,34,59,87,46,25,31};
        int max=arry[0];
        for(int i=1;i<arry.length;i++){
            if(arry[i]>max){
                max=arry[i];
            }
        }
        System.out.println(max);

2.只用一个数组,实现数组反转

 int[] arry={66,34,59,87,46,25,31};
        int max=arry[0];
       for(int min=0,Max=arry.length-1;min<Max;min++,Max--){
           int temp=0;
           temp=arry[min];
           arry[min]=arry[Max];
           arry[Max]=temp;
       }
        for(int i=0;i<arry.length;i++){
            System.out.print(arry[i]+",");
        }
    }

代码输出:31,25,46,87,59,34,66,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值