美文网首页
Java-入门-数组

Java-入门-数组

作者: 月沉眠love | 来源:发表于2019-08-12 00:12 被阅读0次

    一、数组

    定义一个数组类型的变量,使用数组类型“类型[]”,例如,int[]。和单个基本类型变量不同,数组变量初始化必须使用new int[5]表示创建一个可容纳5个int元素的数组。

    Java的数组有几个特点:

    数组所有元素初始化为默认值,整型都是0,浮点型是0.0,布尔型是false;
    数组一旦创建后,大小就不可改变。

    public class Main {
        public static void main(String[] args) {
            // 5位同学的成绩:
            int[] ns = new int[5];
            ns[0] = 68;
            ns[1] = 79;
            ns[2] = 91;
            ns[3] = 85;
            ns[4] = 62;
        }
    }
    

    1.for each循环遍历

    public class Main {
        public static void main(String[] args) {
            int[] ns = { 1, 4, 9, 16, 25 };
            for (int n : ns) {
                System.out.println(n);
            }
        }
    }
    

    2.打印数组内容

    int[] ns = { 1, 1, 2, 3, 5, 8 };
    System.out.println(ns); // 类似 [I@7852e922
    
    int[] ns = { 1, 1, 2, 3, 5, 8 };
    for (int n : ns) {
        System.out.print(n + ", ");
    }
    

    Java标准库提供了Arrays.toString()

    import java.util.Arrays;
    
    public class Main {
        public static void main(String[] args) {
            int[] ns = { 1, 1, 2, 3, 5, 8 };
            System.out.println(Arrays.toString(ns));
        }
    }
    
    

    3.数组排序

    冒泡排序
    import java.util.Arrays;
    
    public class Main {
        public static void main(String[] args) {
            int[] ns = { 28, 12, 89, 73, 65, 18, 96, 50, 8, 36 };
            // 排序前:
            System.out.println(Arrays.toString(ns));
            for (int i = 0; i < ns.length - 1; i++) {
                for (int j = 0; j < ns.length - i - 1; j++) {
                    if (ns[j] > ns[j+1]) {
                        // 交换ns[j]和ns[j+1]:
                        int tmp = ns[j];
                        ns[j] = ns[j+1];
                        ns[j+1] = tmp;
                    }
                }
            }
            // 排序后:
            System.out.println(Arrays.toString(ns));
        }
    }
    
    Arrays.sort()
    mport java.util.Arrays;
    
    public class Main {
        public static void main(String[] args) {
            int[] ns = { 28, 12, 89, 73, 65, 18, 96, 50, 8, 36 };
            Arrays.sort(ns);
            System.out.println(Arrays.toString(ns));
        }
    }
    

    必须注意,对数组排序实际上修改了数组本身

    二、多维数组

    1.二维数组

    public class Main {
        public static void main(String[] args) {
            int[][] ns = {
                { 1, 2, 3, 4 },
                { 5, 6, 7, 8 },
                { 9, 10, 11, 12 }
            };
            System.out.println(ns.length); // 3
        }
    }
    

    2.三维数组

    int[][][] ns = {
        {
            {1, 2, 3},
            {4, 5, 6},
            {7, 8, 9}
        },
        {
            {10, 11},
            {12, 13}
        },
        {
            {14, 15, 16},
            {17, 18}
        }
    };
    

    相关文章

      网友评论

          本文标题:Java-入门-数组

          本文链接:https://www.haomeiwen.com/subject/gbiejctx.html