数组,下标越界及小结

数组的四个基本特点

  • 其长度是确定的。数组一旦被创建,它的大小就是不可以改变的。
  • 其元素必须是相同类型,不允许出现混合类型。
  • 数组中的元素可以任何数据类型,包括基本类型和引用类型。
  • 数组变量属引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量。

​ 数组本身就是对象,java中对象是在堆中的,因此数字无论保存原始类型还是其他对象类型,

数组对象本身是在堆中的。

数组边界

  • 下标的合法区间:【0,length-1],如果越界就会报错:
 public static void main(String[] args) {int[] a=new int[2];System.out.println(a[2]);}
package com.boss.array;public class ArrayDemo03 {public static void main(String[] args) {int[] a={1,2,3,4,5};System.out.println(a[0]);//越界for (int i = 0; i <=a.length ; i++) {System.out.println(a[i]);}}
}
  • java.lang.ArraylndexOutOfBoundsExcetion:1//数组下标越界了,超过范围了

小结:(重要)

  • 数组相同数据类型(数据类型可以我任意类型)的有序集合
  • 数组也是对象。数组元素相当于对象的成员变量
  • 数组长度的确定,不可变的。如果越界,则报:ArraylndexOutOfBounds

数组,下标越界及小结相关推荐

  1. Java数组03:下标越界及小结

    数组的四个基本特点: 其长度是确定的,其一旦被创建,他的大小便不可以改变. 其元素必须是相同的类型,不允许出现混合多个类型 其元素可以是任何数据类型,包括基本类型和引用类型. 数组变量属于引用类型,数 ...

  2. 关于C++中数组下标越界不报错的问题

            C++中数组下标越界程序并不报错是因为编译器不会对数组下标作越界检查造成的. C语言非常重视运行时的效率,所以没有进行数组越界检查,而C++继承了C的效率要求,自然也不做数组越界检查. ...

  3. 5.java.lang.IndexOutOfBoundsException(数组下标越界异常)

    5.java.lang.IndexOutOfBoundsException(数组下标越界异常) 参考文章: (1)5.java.lang.IndexOutOfBoundsException(数组下标越 ...

  4. C语言编译器不检查数组下标越界

    这两天被人问了一个问题说假如C/C++访问下表越界的数组元素会报错么,于是充满好奇心的我动手试了一下,WTF,果然没有报错,但是会给程序带来莫名其妙的结果(比如十次的循环但是变成了死循环,但八次却可以 ...

  5. 数组下标越界异常是如何产生的

    首先,ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长,类似于C语言中的动态申请内存,动态增长内存.对于ArrayList而言,它实现List接口.底层使用数组保存所有元素.其操作 ...

  6. Java实验4-1【数组下标越界异常处理】

    文章目录 前言 一.任务介绍 1.任务描述 2.运行结果 3.任务目标 4.实现思路 二.程序实现 1.代码 2.实验结果(输出结果) 三.总结 前言 一.任务介绍 1.任务描述 编写程序,捕获并处理 ...

  7. 数组下标越界解析(以C语言为例)

    这段时间把C++学完了顺带把C重学了一遍,有了汇编的基础后过去的很多疑惑都解开了,比如下面这道数组下标越界问题. 问题代码如下: #include<stdio.h> int  Hellow ...

  8. java数组下标越界的问题

    java数组下标越界的问题: 最近一直出现这类问题:数组下标越界 举例说明: Exception in thread "main" java.lang.ArrayIndexOutO ...

  9. 如何解决数组下标越界异常

    如何解决数组下标越界异常 今天在写接口的时候运行发现有一个数组的下标越界异常了, 检查了一下发现实在上面的数组中有一些字符串没有大写,造成跟下面的数组字符串不一样,所以导致了数组下标越界异常.

最新文章

  1. 摘: cmd环境 使用一点知识
  2. docker - 在centos7和windows10安装
  3. 如何使用jquery的Highcharts
  4. Android Studio 管理所有程序退出
  5. less webpack 热更新_webpack---less+热更新 使用
  6. ajax取消重复请求
  7. 7-24 说反话-加强版 (20 分)
  8. Python学习——使用ReportLab生成带表格和图文的PDF
  9. 双 JK 触发器 74LS112 逻辑功能。真值表_【数电笔记】时序逻辑电路设计举例
  10. python安装不了whl文件_python怎样安装whl文件
  11. Java语言使用注解处理器生成代码——第二部分:注解处理器
  12. 当医疗邂逅ICT——长沙湘雅医疗现场会,我们,不见不散
  13. HTML5 开发工具
  14. 短跑enti策略:如何在不破坏软件的情况下改进软件
  15. 澳洲八大的IB(International Baccalaureate)成绩录取要求
  16. JAVA数据类型笔记
  17. 转:任正非寄语2010:开放、妥协与灰度
  18. 别人看我真威风,我羡别人好轻松
  19. 地图标识符号大全_微信小游戏大全:炮火荣耀!我再也不玩游戏了!
  20. 接口自动化测试框架-完整测试用例模板

热门文章

  1. 服务器信息未初始化失败怎么办,初始化服务器失败
  2. Go语言使用golang-jwt/jwt/v4进行JWT鉴权
  3. element Dropdown二级下拉菜单
  4. CE认证电气间隙和爬电距离要求
  5. 花旗金融技术岗社招内推
  6. 关于一些C语言代码优化的方法,我慷慨解囊了大家酌情收藏
  7. Java程序员面试需要注意什么
  8. proteus 上拉电阻
  9. Selenium自动化测试入门(基于Python)
  10. 【开机启动】win11开机启动软件,win11开机启动bat脚本(开机启动vbs文件)