数组+堆栈

数组:
定义:相同类型变量的集合,连续的空间;
spacer.gif
特征:
1、数组名,即标识符,连续空间的首地址;
2、元素下标标明了元素在数组中的位置,从0开始;
3、每个数组都可以通过下标来访问;
4、数组长度固定不变,避免数组越界;
spacer.gif
使用数组四步走:
1、声明数组     int score[];int[] score;【声明时不能指定数组长度】
2、分配空间      数据类型[ ] 数据名 = new 数据类型[大小]  int[ ]  score = new int [30];【注意关键字new和数组长度】
3、赋       值      int[ ] score = {89,79,76}; int[ ] score = new int[ ]{89,79,76 }【数组名+下标】        
4、处理数据   【使用,数组名+下标,下标从0开始】
Ps.数组名.length代表数组长度
会出现的错误:
java.lang.ArrayIndexOutOfBoundsException     数组越界异常
java.lang.NullPointerException       空指针异常【 int [] ns = null ;
常用做法:
1、声明+ 分配空间:不确定数组个数时
     int[] a = new int[10];
2、声明+分配空间+赋值:确定数组初始化数据时,数组长度由初始值来决定
     int[] a = {1,2,3,4,5};
数组遍历:
1、for循环:遍历的次数由数组长度来决定,数组长度:arr.length属性,开始索引以0开始,结束索引为arr.length-1
for(int i=0;i<arr.length;i++){
     //数据通过数组名+索引(下标)来获取
     int tmp=arr[i];
}
                    注意: java.lang.ArrayIndexOutOfBoundsException     数组索引越界异常
           2、foreach循环:不涉及索引
for(int t : arr){
     //t为每次循环从数组中取到的数据,不使用赋值和使用索引的情况
     int tmp=t;
}
数组new后,初始值:
    int/short/ long/char/byte        0
    double/float                               0.0
    boolean                                       false
    String                                           hull
堆栈:

blob.png

栈:赋值时是具体的值;
堆:开辟一个栈用于存放堆所在的地址;


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值