0
点赞
收藏
分享

微信扫一扫

【Java 一维数组】

you的日常 2022-02-20 阅读 61

定义

  • 数组是相同类型数据的有序集合。数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成。其中,每一个数据称作一个元素,每个元素可以通过一个索引(下标)来访问它们
  • 数组的四个基本特点
    • 长度是确定的,数组一旦被创建,它的大小就是不可以改变的
    • 其元素的类型必须是相同类型,不允许出现混合类型
    • 数组类型可以是任何数据类型,包括基本类型和引用类型
    • 数组有索引的:索引从0开始,到 数组.length-1 结束
  • 数组变量属于引用类型,数组也是对象,数组中的每个元素相当于该对象的成员变量。数组本身就是对象,Java中对象是在堆中的,因此数组无论保存原始类型还是其他对象类型,数组对象本身是在堆中存储的
package com.yuzhenc.array;

/**
 * @author: yuzhenc
 * @date: 2022-02-20 13:45:34
 * @desc: com.yuzhenc.array
 * @version: 1.0
 */
public class Test01 {
    public static void main(String[] args) {
        //数组赋值为null和什么都没有赋值  不一样的效果
        int[] array1;//未初始化,直接输出会报错
        int[] array2 = null;//初始化为了null,可以输出

        //静态初始化
        int[] array3 = {1,2,3};
        int[] array4 = new int[]{1,2,3};

        //动态初始化
        array1 = new int[3];
        array1[0] = 1;
        array1[1] = 2;
        array1[2] = 3;

        //默认初始化
        //基本类型
        byte[] arr1 = new byte[3];//0
        short[] arr2 = new short[3];//0
        int[] arr3 = new int[3];//0
        long[] arr4 = new long[3];//0
        float[] arr5 = new float[3];//0.0
        double[] arr6 = new double[3];//0.0
        char[] arr7 = new char[3];//'\u0000'
        boolean[] arr8 = new boolean[3];//false
        //引用类型
        Object[] obj = new Object[3];//null
        //输出对应的默认值
        System.out.println(arr1[0]+"\t"+arr2[0]+"\t"+arr3[0]+"\t"+arr4[0]+"\t"+arr5[0]+"\t"+arr6[0]+"\t"+arr7[0]+"\t"+arr8[0]+"\t"+obj[0]); 
    }
}

在这里插入图片描述

数组遍历

package com.yuzhenc.array;

import java.util.Scanner;

/**
 * @author: yuzhenc
 * @date: 2022-02-20 14:15:23
 * @desc: com.yuzhenc.array
 * @version: 1.0
 */
public class Test02 {
    public static void main(String[] args) {
        //从键盘录入10个人的成绩,并求平均数
        int[] scores = new int[10];
        int sum = 0;
        Scanner sc = new Scanner(System.in);

        for (int i = 0; i < scores.length; i++) {
            System.out.print("请输入第"+(i+1)+"个学生的成绩:");
            scores[i] = sc.nextInt();
        }

        //普通for循环,输出成绩
        for (int i = 0; i < scores.length; i++) {
            System.out.print(scores[i]+"\t");
            sum += scores[i];
        }
        System.out.println(sum*1.0/scores.length);

        sum = 0;

        //增强for循环
        for(int i:scores){
            System.out.print(i+"\t");
            sum += i;
        }
        System.out.println(sum*1.0/scores.length);
    }
}

在这里插入图片描述

举报

相关推荐

0 条评论