潭州Java中级班(day_05)

1.掌握数字的使用
2.掌握数字的声明以及内存分配
3.通过数字的简单范例加深对数字的操作原理
4.掌握多维数组的定义和使用


 

数组
数组是一组相关变量的集合,一个数组实际上就是一连串的变量

一维数组 二位数组

int i[100] 表示一个伪代码,只是代表含义

一维数组可以存放很多个数据,并且这些数据类型是完全相同的

1.声明数组 2.分配内存空间

 

 

 

引用数据类型:
数组
引用数据类型它传递的是内存的使用权,一块内存空间,可以有多个人同时使

声明类型
方法1:
数据类型 数组名[]=null;

数组名=new 数据类型[长度];

package com.tz.Day05;

public class Test {
    public static void main(String[] args) {
        int    socre[]=null;   //声明了一个数组
        socre=new int[3];  //为这个数组开辟了空间,大小3
        
        //int [] a=new int [10];  //声明了一个数组
//        System.out.println("score[0]="+socre[0]);
//        System.out.println("score[1]="+socre[1]);
//        System.out.println("score[2]="+socre[2]);
        
        for (int i = 0; i <socre.length; i++) {
            socre[i]=i*2+1;    //给这个数组赋值,奇数
            System.out.println("score["+i+"]="+socre[i]);
        }
        
        System.out.println("数组的长度为:"+socre.length);
    }

}

 


方法2
数据类型 数组名[]=new 数组类型[长度];

 

package com.tz.Day05;

public class Test2 {
public static void main(String[] args) {
int score[]={91,92,93,94,95,96,97,98,99}; //静态数组
for (int i = 0; i < score.length; i++) { //循环的输出内容
System.out.println("score["+i+"]="+score[i]);
}
}

}

 

 

 

数组命名规范
第一个单词首字母小写,之后的单词首字母大写 studentDemoTest
int a只要是引用数据类型,默认值就是null;


下标
数组元素通过数组下标来访问
数组的索引超过绑定的长度就是数组越界

长度(length)


 

求一维数组最大值和最小值

 

package com.tz.Day05;

public class Test3 {
    public static void main(String[] args) {
        int score[]={91,93,95,96,97,92,97,98,99};  //使用静态初始化来声明数组
        int max=0;  //保存数组中的最大值
        int min=0;  //保存数组中的最小值
        max=min=score[0];  //把第一个元素的内容赋值给最大值和最小值
        
        for(int i=0;i<score.length;i++){
            if(score[i]>max){   //判断后续的元素是否比max大
                max=score[i];   //如果大的话修改max的内容
            }
            if(score[i]<min){  //判断后续的元素是否比min小
                min=score[i];  //如果小的话就修改min的内容
            }
        }
        System.out.println("最大值:"+max);
        System.out.println("最小值:"+min);
    }

}
            

 

 

 

一维数组的排序

 


package com.tz.Day05;


public class Test5 {
public static void main(String[] args) {
int score[]={91,93,92,96,95,94,99,98,97};//使用静态初始化来声明数组

for(int i=1;i<score.length;i++){
for(int j=0;j<score.length;j++){
if(score[i]<score[j]){ //交换位置
int temp=score[i]; //中间变量
score[i]=score[j];
score[j]=temp;
}
}

// System.out.print("第"+i+"次排序的结果:");
// for (int j = 0; j < score.length; j++) {
// System.out.print(score[j]+"\t");
// }
// System.out.println();
}

for(int i=0;i<score.length;i++){ //循环输出
System.out.println("score["+i+"]="+score[i]);
}
}

}

 

 

 

 

二维数组
数据类型 数组名[][]
数组名=new 数字类型[行的个数][列的个数]
静态

package com.tz.Day05;

public class Test7 {
    public static void main(String[] args) {
        // 静态初始化,每行的数组元素个数不一样
        int score[][] = {{ 67, 100,100 }, { 61, 100,11,22,33 }, { 66, 100 }, { 65, 100 }};
        
        for (int i = 0; i < score.length; i++) {
            for (int j = 0; j < score[i].length; j++) {
                System.out.print(score[i][j] + "\t");
            }
            
            System.out.println();
        }
        
    }

}

 


数据类型 数组名 =new 数据类型[行的个数][列的个数]

 

package com.tz.Day05;

public class Test7 {
    public static void main(String[] args) {
        // 静态初始化,每行的数组元素个数不一样
        int score[][] = {{ 67, 100,100 }, { 61, 100,11,22,33 }, { 66, 100 }, { 65, 100 }};
        
        for (int i = 0; i < score.length; i++) {
            for (int j = 0; j < score[i].length; j++) {
                System.out.print(score[i][j] + "\t");
            }
            
            System.out.println();
        }
        
    }

}

 

 

 


 

总结:


数组使用两个步骤声明


声明数组是在栈内中声明的


为数组开辟空间是使用new关键字来完成的


可以通过数组的名称,length属性来求出数组的

长度
数组的下标是不可以越界的越界的话就会报错,如果开辟了两个空间的数组


那么它的长度就是0-1(下标=长度-1)


工作当中一般使用一维数组和二维数组

posted on 2018-08-21 16:57  王育奕  阅读(171)  评论(0编辑  收藏  举报

导航