黑马程序员-->Java基础-->数组
来源:互联网 发布:qq的网络传输协议 编辑:程序博客网 时间:2024/05/21 11:10
-------android培训、java培训、期待与您交流! ----------
一、数组的定义
用于存储同一类型数据的一个容器。
好处:可以对该容器中的数据进行编号,从0开始。数组用于封装数据,就是一个具体的实体。
格式:
元素类型[] 数组名 = new 元素类型[元素个数或数组长度]
如:int[] arr = new int[5]
元素类型[] 数组名 = new 元素类型[]{元素,元素,...}
如:int[] arr = new int[]{1,3,5,7};
int[] arr = {1,3,5,7};
二、栈内存和堆内存
栈内存:某一个函数被调用时,这个函数会在栈内存里面申请一片空间,以后在这个函数内部定义的变量,都会分配到这个函数所申请到的栈。当函数运行结束时,分配给函数的栈空间被收回,在这个函数中被定义的变量也随之被释放和消失。
堆内存:通过new产生的数组和对象分配在堆内存中。堆内存中分配的内存,由JVM提供的GC(垃圾回收机制)来管理。
在堆内存中产生了一个数组对象后,我们还可以在栈中定义一个变量,这个栈中变量的取值等于堆中对象的首地址。栈内存中的变量就成了堆内存中数组或者对象的引用变量。我们以后就可以在程序中直接使用栈中的这个变量来访问
我们在堆中分配的数组或者对象,引用变量相当于数组或者对象起的一个别名,或者代号。
三、数组操作常见问题
int[] arr = new int[3];
arr = null;//当引用没有任何指向值且为null的时候,该引用还在用于操作数组,会报NullPointerException异常
System.out.println(arr[3]);//访问到数组中不存在的角标时会报ArrayIndexOutofBoundsException异常
四、数组常见操作
(1)获取数组中的元素,通常会用到遍历,示例:
(2)获取最值
(3)对给定数组的排序
选择排序:
冒泡排序:
折半查找:
查表法(各类进制的转换):
五、数组中的数组(二维数组)
二维数组定义:一维数组作为元素存储到一维数组中
-------android培训、java培训、期待与您交流! ----------
- 黑马程序员-->Java基础-->数组
- 黑马程序员---java基础----数组
- 黑马程序员-Java基础-数组
- 黑马程序员-----Java基础-----数组!
- 黑马程序员---java基础--数组
- 黑马程序员---Java基础---数组
- 黑马程序员---Java基础--04天(数组)
- 黑马程序员-java基础 循环和数组
- 黑马程序员 Java基础(函数,数组)
- 黑马程序员JAVA基础-数组的操作
- 黑马程序员---JAVA基础---数组(四)
- 黑马程序员--Java基础--02数组
- 黑马程序员--- java基础学习之数组
- 黑马程序员--Java基础--02数组
- 黑马程序员—Java语言基础(数组)
- 黑马程序员-day04-Java基础语法(数组)
- 黑马程序员 Java基础<五> 数组
- 黑马程序员 java基础之数组
- 在Ubuntu下构建Bullet以及运行Bullet的例子程序
- 跟着官方文档学HINT(二)优化器模式
- Oracle Database 9i/10g/11g编程艺术 笔记
- android自定义表格布局
- 生成树
- 黑马程序员-->Java基础-->数组
- 如何理解K线所包含的奥秘
- POJ 3630 --Trie
- QT Demo 之 MouseArea
- Dijkstra 最短路径算法的设计与PHP实现
- 拖延症的自白
- Linux的selinux
- 我的2014年10月
- 在SharePoint 2013中建立Report Viewer读取RDLC报表