黑马程序员——数组
来源:互联网 发布:js对象数组重新赋值 编辑:程序博客网 时间:2024/06/06 03:56
------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------
概念:
同一种数据类型的集合。
可以自动给数组张的元素从0开始编号,方便操作元素。
一维数组:
格式1:元素类型[]数组名=new元素类型[元素个数或数组长度];
如:int[] arr=new int[3];页可以写成:int arr[] = new int[3];
格式2:元素类型[]数组名=new元素类型[]{元素1,元素2,....};
如:int[] arr=new int[]{1,2,3,4,5};
还有一种简写静态初始化格式:int[] arr={1,2,3,4,5};
new出来的东西都是分配在堆内存中的,在堆内存中生成一个容器实体,通过哈希值指向堆内存中的数组,所以数组也称为引用数据类型。数组在堆内存中开辟空间后,就有默认的初始化值。
在操作数组时常见的两个问题:
ArrayIndexOutOfboundsException: 访问到了数组中不存在的下标。
NullPointerException: 空指针异常,引用没有任何指向值为null的情况,该引用还在用于操作实体。
常见操作:
获取数组中的元素,通常会用到遍历。
示例:
class ArrayDemo
{
public static void main(String[] args)
{
int[] arr=new int[3]; //的定义一个长度为3的数组
for(int x=0;x<3;x++) //利用for循环遍历数组中的元素
{
System.out.println(“arr[”+”]=”+arr[x]+”;”);
}
}
}
//arr.length获取数组长度
数组排序:常用的排序方式有冒泡排序和选择排序
示例:
冒泡排序:比较相邻的元素,如果第一个大,就交换他们。对每一对相邻元素都做同样工作,执行完后,最后的元素应该是最大的,较小的数会逐个往前移,类似于泡泡上升,所以叫冒泡排序。
class MaoPao
{
public static void main(String[] args)
{
int arr[]={21,12,53,15,64}; //定义数组
SopArray(arr); //打印原数组
BubbleSort(arr); //调用冒泡排序方法
SopArray(arr); //打印排序好后的数组
}
public static void SopArray(int[] arr) //遍历打印数组元素
{
for(int x=0;x<arr.length;x++)
{
System.out.print(arr[x]+” ”);
}
System.out.println();
}
public static void BubbleSort (int[] arr)
{ int temp=0;
for(int x=0;x<arr.length;x++) //外循环遍历数组
{
for(int y=0;y<arr.length-1-x;y++) //内循环比较元素大小排序
{
if(arr[y]>arr[y+1]) //用第三方变量互换元素
{
temp=arr[y];
arr[y]=arr[y+1];
arr[y+1]=temp;
}
}
}
}
}
二维数组:
格式:int[][] arr=new int[3][2];
定义了一个名为arr的二维数组,有3个一维数组,每个一维数组中有2个元素。
格式:int[][] arr=new int[3][];
每一个一维数组都是默认初始化值为null。
格式:int[][] arr={{1,3,5},{2,5},{12,46,33,6}};
定义二维数组,每一个一维数组中的元素都初始化了。
- 黑马程序员—数组
- 黑马程序员—数组
- 黑马程序员——数组
- 黑马程序员——数组
- 黑马程序员——数组
- 黑马程序员——数组
- 黑马程序员——数组
- 黑马程序员——数组
- 黑马程序员——数组
- 黑马程序员——数组
- 黑马程序员——数组
- 黑马程序员——数组
- 黑马程序员——数组
- 黑马程序员——数组
- 黑马程序员——数组
- 黑马程序员——数组
- 黑马程序员——数组
- 黑马程序员——数组
- 算法设计与分析:第五章 回溯法 5.8流水作业车间调度
- 对mysql多表查询的理解
- Android Context与GetApplicationContext的区别及使用
- 算法设计与分析:第五章 回溯法 5.9连续邮资问题
- 如何编写一个JSON解析器
- 黑马程序员——数组
- ZOJ Problem Set - 3818 Pretty Poem
- C 语言基础
- HDU 1556 Color the ball
- Python中导入子文件夹中的模块
- String类的获取功能
- 机房收费系统之查询系
- javascript是什么?
- 算法设计与分析:第六章 图 6.1单点失败