数组的定义:多个相同类型数据集合对这些数据管理。
数组的声明方式:int[] a或者int a[]; 两者都可以,可能学过C,C++的朋友习惯inta[];
意思是定义一个名字为a的数组;
注意:JAVA的数组在声明时不能指定长度(数组元素个数);
如果是inta[5]这样是错误的。
数组初始化:
分为动态初始化与静态初始化
动态初始化:
先定义数组,然后给数组分配空间和赋值
如
int a[];
a=new int[3];
a[0]=1,a[1]=1,a[2]=2;
下面举一个简单的例子:
public class TestArray
public static void main(String[] args){
int[]s; //定义数组
s=new int[5]; //分配空间
for(int i=0;i<5;i++){ //循环赋值
s[i]=i;
}
}
}
静态初始化:
定义数组同时就为数组元素分配空间并且赋值。
如:
inta[]={1,2,3,4,5};
或者person p []={new person("name1",19),
new person("name2",20)}
关于数组的例子:
1.按数组原有顺序在屏幕上输出
- public class Array1 {
- public static void main(String[] args) {
- int a[]={1,2,3,4,5,6,7,8,9,10};//定义一个静态数组
- for(int i =0;i<a.length;i++) //循环赋值,a.length是数组a的长度
- {
- System.out.print(a[i]+" ");//输出数组的值
- }
- }
- }
- //结果:1 2 3 4 5 6 7 8 9 10
2.将输入的数组元素进行从小到大的排序
- public class NumSort {
- public static void main(String[] args) {
- int[] a = new int[args.length];
- for (int i=0; i<args.length; i++) {
- a[i] = Integer.parseInt(args[i]);
- }
- print(a);
- selectionSort(a);
- print(a);
- }
- private static void selectionSort(int[] a) {
- int k, temp;
- for(int i=0; i<a.length; i++) {
- k = i;
- for(int j=k+1; j<a.length; j++) {
- if(a[j] < a[k]) {
- k = j;
- }
- }
- if(k != i) {
- temp = a[i];
- a[i] = a[k];
- a[k] = temp;
- }
- }
- }
- private static void print(int[] a) {
- for(int i=0; i<a.length; i++) {
- System.out.print(a[i] + " ");
- }
- System.out.println();
- }
- }