1. 包装类(Wrapper Class).针对原生数据类型的包装。所有的包装类(8个)都位于java.lang包下。Java中的8个包装类分别是:Byte,Short,Integer,Long.Float,Double,Character,Boolean.他们的使用方式都是一样的,可以实现原生数据类型与包装数据类型的双向转换,如int a = 5; Integer Int = new Integer(); b = Int.intValue();
2. 数组(Array):相同类型的数据的集合叫做数组。
3. 如何来定义数组:Type[] 变量名 = new type[数组中元素的个数;可以按照以下方式定义长度为10的数组:
Int[] a = new int[10];或者int a[] = new int[10];
4. 数组中的元素索引从0开始的,对于数组来说,最大的索引=数组的长度-1;
5. 定义数组的第三种方式,type[] 变量名 = new type[]{逗号分隔的初始化值列表}或tye[] 变量名 = {1,2,3};
6. Java中每个数组都有一个名为length的属性,它表示数组的长度。length属性是public。Final,int的。数组长度一旦确定,就不能改变大小。可推知,length是在构造方法中赋上初值的。
7. Int[] a = new int[10],其中a是一个引用,它指向生成的数组对象的首地址,数组中每个元素都是int类型,其中仅存放数据值本身。
8. 二维数组:二维数组是一种平面的二维结构,本质上是数组的数组。二维数组的定义方式:
1) type[][] a = new type[2][3];
2) type[][] a = new type[2][];
a[0] = new type[3];
a[1] = new type[2];
3) type[][] a = new type[][]{{1,2,2},{2,4,5},{3,5,6}};
按顺序打印的方式:以int为例
Int[][] a = new type[][]{{1,2,2},{2,4,5},{3,5,6}};
for(int i= 0; I <a.length; i++)
{
for(int j = 0; j < a[i].length; j++)
{
System.out.println(a[i][j ]);
}
}
9. import java.util.Arrays;
Arrays.equals(数组名,数组名);//比较两个数组是否值相等。
而a.equals(b)没有重写,任然继承Object类的equals,比较引用所指对象是否相等。
10. 三位数组。Type[][][] a = new type[2][3][4];。
11. 冒泡排序法(掌握交换排序,快速排序的原理与实现方式)
12. 二分查找(binary search)待查找数组要有序。分析:
public class ArraySearchTest
{
public static int search(int[] array, int value)
{
int low = 0;
int high = array.length - 1;
int middle;
while(low <= high)
{+
middle = (low + high)/2;
if(array[middle] == value)
{
return middle;
}
if(array[middle] > value)
{
high = middle - 1;
}
if(array[middle] < value)
{
low = middle + 1;
}}
return -1;
}
public static void main(String[] args)
{
int[] a = {1,2,3,4,5,6,7,8,9,10};
System.out.println(search(a,2));
}
}
13. 生成一个随机数的两种方式:
1) Import java.lang.Math;Math.random()*n + m.则表示的范围是[m,n + m - 1]
2) Imprort java.util.Random;Random里面的nextInt(n)方法,表示生成一个0 <= 随机数 < n的一个数。