数组是一个变量,存储相同数据类型的一组数据
声明一个变量就是在内存空间划出一块合适的空间。
声明一个数组就是在内存空间划出一串连续的空间。

数组的基本要素:
.标识符:数组的名称,用于区分不同的数组。
.数组元素:向数组中存放的数据
.元素下标:对数组元素进行编号,从0开始,数组中的每个元素都可以通过下标来访问。
.元素类型:数组元素的数据类型

使用数组四步走
1.声明数组 int[]a;
2.分配空间 a=new int[5]
3.赋值 a[0]=8;
4.处理数据 a[0]=a[0]*10;

1.声明数组:告诉计算机数据类型是什么
int[] score 1;
int score 2[];
String[] name;
语法:数据类型 数组名[];(声明数组时不规定数组长度)
数据类型[] 数组名;

2.分配空间:告诉计算机分配几个连续的空间
score=new int[30];
avgAvg=new int[6];
name=new String[30];
语法:声明数组并分配空间
数据类型[]数组名=new 数据类型[大小];

3.赋值:向分配的格子里放数据边
score[0]=69;
score[1]=79;
score[2]=76;
......
方法1:指定数组长度边声明,边赋值
int [] score ={89,79,76};
int [] score=new int[]{89,79,76};(不能指定数组长度)
java
4.处理数据

数组排序(使用java.util.Array类)
.java.util包提供了许多工具类
.Arrays类提供了许多工具类
.Arrays类的sort()方法:对数组进行升序排列
数组复制方法:System方法
.语法:public static void arraycopy{
Object src,
int srcPos,
Object dest,
int destPos,
int length
}
.参数
src-原数组
srcPos-原数组中的起始位置
dest-目标数组
destPos-目标数组中的起始位置
Length-要复制的数组元素的数量

Arrays方法
.语法: int [] copyOf(int [] original,int newLength)
.参数:
original 要复制的数组
newLength 要返回的副本的长度

二维数组:由一维数组组成的数组
语法:
int[][]arr=new int[2][];
定义了二维数组的长度,但是一维数组长度没有定义。一维数组没有申请内存空间为null。
int[][]arr=new int[2][3];
定义了一维数组和二维数组的长度,一维数组分配了内存空间,一维数组的长度为3,一维数组的默认元素为0.
二维数组静态化
int[][]arr={{a,b,c},{d,f},{g,e}

选择排序原理:
将数组中每个元素与第一个元素比较,如果这个元素小于第一个元素,则交换这两个元素。
循环第一条规则,找出最小元素,放于第一个位置。
经过n-1轮的比较完成排序
(简单而言,每轮都找到最小的放到前面)

冒泡排序原理
逐一比较数组中相邻的两个元素,如果后面的元素小于前面的元素,就交换相互顺序。
经过一轮比较,一定有一个最大的排在最后的位置。
每次比较剩下的元素,经过n-1次比较可以实现排序。
(简单而言,比较交换相邻元素,每次最大的漂移到最后)

插入排序原理:
将数组分为两部分,将后部分的第一张逐一与前部分每一张比较。如果当前元素小,就移动被比较元素
找到合适位置插入。

 

posted on 2017-05-25 12:51  Talvez  阅读(171)  评论(0编辑  收藏  举报