Java程序设计(第二版)复习 第三章

数组的使用

首先定义,然后用new生成数组,最后通过下标访问

定义 

此时只是引用还未分配内存空间,需要使用new去分配内存空间,否则是无法被访问的

定义的两种方法:
数据类型 数组名[];
数据类型 [] 数组名;

对于二维数组:

数据类型 数组名[][];

数据类型[][] 数组名;

如:

int a[];
int[] b;

生成数组:

数据变量名=new 数据类型[数组长度];
必须给出长度,并且数组一旦创建,就不允许在增加空间
使用new后,数组中每个成员会被初始化,初始化的值如下

数值型 0
字符型   表示一个字符串结束的标志。
布尔型 false
类对象 null

小细节:

二位数组的长度:  如 int temp[][]=new int[3][5];

          则temp.length 是指二维数组temp的行数,故temp.lengrh=3;

          temp[1].length是指temp的第一行的列数故temp[1].length=5;

二维数组定义时   如:int temp[][]={{1,2},{3,4},{5,6}}是指二维数组有三行,每行有二列,如temp[0][1]=2

无论一维还是二维都可以一开始就赋初值: int t[]={1,2,3};    int temp[][]= {{1,2},{3,4},{5,6}}      但是[]中不要指出数组有多长。

Arrays类

Arrays类在 java.util中,里面的方法是用static修饰的方法(所以可以直接使用类名调用),用于对数组进行一些特定操作(如排序)。

如:

import java.util.Arrays;


public static void main(String[] args) {
        
        int a[]= {7,2,3};
        Arrays.sort(a);
        for(int i=0;i<a.length;i++) {
            System.out.println(a[i]);
        }
        
    }

一些其他函数如: copyOf 用于复制数组   binarySearch 二分搜索法查找  equals 判断两个数组是否相等  fill 填充数组   sort 排序

用Arrays实现对中文排序:

package package03;
import java.util.Arrays;
import java.text.Collator;
import java.util.Comparator;
public class shuzu {
    
    public static void main(String[] args) {
        String[] arr= {"计算机","长江","通信","数学"};
        Comparator comparator=Collator.getInstance(java.util.Locale.CHINA);// Collator类是用来执行区分语言环境的字符串比较,这里使用中文CHINA
        Arrays.sort(arr,comparator);//在sort中排序,按照指定的比较器产生的顺序对指定对象数组进行排序
        for(int i=0;i<arr.length;i++) {
            System.out.println(arr[i]);
        }
        //sort 一般按照数值的大小或字母顺序排序,若想排序中文,需要指定比较器comparator,按照比较器
        //顺序进行比较
    }

}
原文地址:https://www.cnblogs.com/eastDong/p/10239547.html