java数组
来源:互联网 发布:该域名未授权解决方案 编辑:程序博客网 时间:2024/06/04 23:30
java数组的静态和动态的初始化及格式和注意事项
/** * java数组是静态的,必须经过初始化后才能使用,并且一旦初始化指定了数组的长度,该长度是不可变的。 * * * * A:数组静态初始化的格式: * 格式:数据类型[] 数组名 = new 数据类型[]{元素1,元素2,…}; * 初始化时显示指定每个数组元素的初始值,由系统决定数组的长度 * 简化格式: * 数据类型[] 数组名 = {元素1,元素2,…}; * * B:java数组动态初始化 * 动态初始化:就是与静态初始化相对的, * 其实动态初始化就是在初始化的时候指定数组长度(这时已经分配内存) * * * 注意:所有的局部变量都是放在栈内存中保存的, * 不管其实基本类型的变量还是引用类型的变量,都是存储在各自的方法栈区中; * 但引用类型变量所引用的对象(包括数据,普通java对象)则总是存储在堆内存中。 * * Java中数组是引用变量(类似于C语言中的指针变量),我们初始化操作后, * 就是将它的引用指向了堆内存中开辟的指定长度的连续内存空间。 * 所以我们真正所做的初始化是将栈中数组变量指向有效的内存。 * * * 数组相关的两个异常 * a:ArrayIndexOutOfBoundsException:数组索引越界异常 * 原因:你访问了不存在的索引。 * b:NullPointerException:空指针异常 * 原因:数组已经不在指向堆内存了。而你还用数组名去访问元素。 * int[] arr = {1,2,3}; * arr = null; * System.out.println(arr[0]); */public class f {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stub//数据类型[] 数组名 = new 数据类型[]{元素1,元素2,…};int[] arr = new int[]{11,22,33,44,55};//int[] arr = new int[5]{11,22,33,44,55};//不允许动静结合//Cannot define dimension expressions when an array initializer is providedint[] arr2 = {11,22,33,44,55};//静态初始化的简写形式int[] arr3;//声明数组引用arr = new int[]{11,22,33,44,55};int[] arr4;//arr2 = {11,22,33,44,55};//简写形式声明和赋值要在同一行//Array constants can only be used in initializersSystem.out.println(arr2);System.out.println(arr2[4]);}}
0 0
- java数组添加数组
- java数组添加数组
- Java数组-二维数组
- 【Java】数组--二维数组
- java-数组/二维数组
- Java数组、遍历数组
- java数组
- JAVA数组
- JAVA数组
- JAVA数组
- Java数组
- Java数组
- java数组
- java数组
- java数组
- Java--数组
- Java数组
- java 数组
- 《程序员修炼之道》笔记(五)
- sdacm-test0076-20170427
- Python四种日期时间表示结构及相互转换
- 在github上托管项目
- Java知识点(三)——异常
- java数组
- 安卓活动的生存周期
- 拓展欧几里得算法小总结
- 深度学习框架--深度卷积神经网络CNNs的多GPU并行框架 及其在图像识别的应用
- base64解密
- 网络编程socket编程详解
- intellij idea搭建python环境,运行tensorFlow样例程序
- C++中引用与指针的区别(详细介绍)
- 软件测试知识点大全