import java.util.Arrays;
public class Learn02{
    public static void main(String[] args){
        System.out.println("-------------------------------");
        System.out.println("------------Leearn02-----------");
        System.out.println("-------------------------------");
        ///1-一维数组的声明两种声明方法
            //声明第一种方式:数组元素类型[] 数组名;
            //声明第二种方式:数组元素类型 数组名[]; 注:c语言的方法
        int[] scoreArray = null;
        //boolean[] checkArray;
        //int scores[];
            //注:良好的开发习惯,引用类型的声明初始化不赋值要赋null。
        System.out.println(scoreArray);
        System.out.println("-------------------------------");
        
        ///2-初始化数组的三种方法
            //无论哪种方法,初始化数组都需要确定数组的长度
            //初始化之后,如果没有赋值,则全部为null
        //scoreArray = new int[3];
        scoreArray = new int[]{1223,1232,2123};
        //scoreArray = {123,321,123};  
        for(int i : scoreArray)
            System.out.println(i); //遍历了一遍
        System.out.println("-------------------------------");
        
        ///3-访问修改数组数据-略
        
        ///4-length,(属性)返回数组长度
        System.out.println(scoreArray.length);//输出:3
        
        ///5-数组之间的特殊赋值(隐藏的指针地址问题),数组是引用类型
        int[] Array1 = {111,222,333,444};
        int[] Array2 = null;
        Array2 = Array1;//需要注意的是,这里赋值是直接把Array1的内存地址直接复制给了Array2
                        //这样便导致了如果你修改Array2的数据,则Array1的数据也会改变。
                        //类似于c语言的指针。
        System.out.println("Array2[0]" + Array2[0]);//输出:Array2[0]111
        Array1[0]=000;
        System.out.println("Array2[0]" + Array2[0]);//输出:Array2[0]0
        System.out.println("-------------------------------");
        
        ///6-Arrays.fill(...[],...),使用Arrays类中的fill填充数组
        Arrays.fill(Array1,66);
        for(int iTemp : Array2)
            System.out.print(iTemp + " " );//输出:66 66 66 66
        System.out.println("\n-------------------------------");
        
        ///7-二维数组的声明方式
        int[][] arr;//int arr[][];
        
        ///8-二维数组的初始化
        arr=new int[3][5];
        System.out.println(arr[1][2]);//new出来的默认值是0        
    }
}

【java】学习路线3-二维数组声明与初始化、Arrays类的更多相关文章

  1. java怎么定义一个二维数组?

    java中使用 [][] 来定义二维数组 定义数组时也可同时初始化下面是一些例子float[][] numthree; //定义一个float类型的2维数组numthree=new float[5][ ...

  2. c# 第17节 二维数组声明、使用

    本节内容: 1:为什么要有二维数组 2:二维数据 3:实例二维数组声明 4:二维数组的使用 1:为什么要有二维数组 2:二维数据声明 3:实例二维数组声明 4:二维数组的使用 foreach遍历 5: ...

  3. java基础知识点补充---二维数组

    #java基础知识点补充---二维数组 首先定义一个二维数组 int[][] ns={ {1,2,3,4}, {5,6,7,8}, {9,10,11,12}, {13,14,15,16} }; 实现遍 ...

  4. js二维数组定义和初始化的三种方法总结

    js二维数组定义和初始化的三种方法总结 方法一:直接定义并且初始化,这种遇到数量少的情况可以用var _TheArray = [["0-1","0-2"],[& ...

  5. java 数组基础学习(一维二维数组)

    1.一维数组 1>静态初始化:数据类型[ ] 变量名 = {元素} 例:int[ ] arr = {1,2} 动态初始化:数据类型[ ] 变量名 = new数据类型[数据长度] 例:int[ ] ...

  6. C++和Java多维数组声明和初始化时的区别与常见问题

    //C++只有在用{}进行初始化的时候才可以仅仅指定列数而不指定行数,因为可以通过直接//初始化时的元素个数自动计算出行数.而仅声明/创建数组而不初始化时,Cpp要求必须写明//行数和列数才能够创建数 ...

  7. Java数组排序基础算法,二维数组,排序时间计算,随机数产生

    import java.util.Arrays; //包含Arrays import java.util.Random; public class HelloWorld { public static ...

  8. Java打印M图形(二维数组)——(九)

    对于平面图形输出集合图形与数字组合的,用二维数组.先在Excel表格中分析一下,找到简单的规律.二维数组的行数为行高,列数为最后一个数大小. 对于减小再增大再减小再增大的,可以用一个boolean标志 ...

  9. C语言学习笔记 (005) - 二维数组作为函数参数传递剖析

    前言 很多文章不外乎告诉你下面这几种标准的形式,你如果按照它们来用,准没错: //对于一个2行13列int元素的二维数组 //函数f的形参形式 f(int daytab[2][13]) {...} / ...

  10. java学习-zxing生成二维码矩阵的简单例子

    这个例子需要使用google的开源项目zxing的核心jar包 core-3.2.0.jar 可以百度搜索下载jar文件,也可使用maven添加依赖 <dependency> <gr ...

随机推荐

  1. SAP - 拆包,组件入库

    场景: 一个成品商品,例如汽车,有很多零部件:车轮,框架,发动机等.以整体形式发货过账,在遇到质量问题客户退货情况,需要把汽车拆开,然后零部件退回到库(按照BOM结构拆卸). MB1A/MIGO:发货 ...

  2. SAP Using Text Modules in Adobe Forms

    In this demo we will create an adobe form which displays text in two different languages (English or ...

  3. P6622 信号传递 做题感想

    题目链接 前言 在这里分享两种的做法. 一种是我第一直觉的 模拟退火.(也就是骗分) 还有一种是看题解才搞懂的神仙折半搜索加上 dp . 模拟退火 众所周知,模拟退火 是我这种没脑子选手用来骗分的好算 ...

  4. 讲给测试人员的docker知识

    docker对测试来说有什么用 docker类似于Windows系统的虚拟机,对于测试来说docker意味着一种新的测试环境部署方式,由于其镜像分层的设置,我们可以在一台物理机上同过docker的方式 ...

  5. 一款 IDEA 插件帮你优雅转化 DTO、VO、BO、PO、DO

    作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.承认你优秀很难 很多码农,把路走窄了 捧一个,喷一个,很多码农都不会多一点思路看问题,总是 ...

  6. 时间模块之datatime模块、os模块、sys模块、json模块、json模块实操

    目录 一.模块的绝对导入和相对导入 二.包的概念 三.编程思想的转变 四.软件开发目录规范 五.常见的内置模块 一.时间模块之datatime模块 1.datetime.datetime.today( ...

  7. Spring知识点详解

    1.Spring 概述 1.1.Spring 的概念和特点 Spring 是一个轻量级的控制反转(IoC)和面向切面(AOP)的开源容器框架,它是由 Rod Johnson(音乐学博士)所创建,其核心 ...

  8. 年中盘点 | 2022年,PaaS 再升级

    作者丨刘世民(Sammy Liu)全文共7741个字,预计阅读需要15分钟 过去十五年,是云计算从无到有突飞猛进的十五年.PaaS作为云计算的重要组成部分,在伴随着云计算高速发展的同时,在云计算产业链 ...

  9. NOI / 2.3基本算法之递归变递推-6262:流感传染

    OpenJudge - 6262:流感传染http://noi.openjudge.cn/ch0203/6262/ 6262:流感传染​​​​​​ 总时间限制: 1000ms 内存限制: 65536k ...

  10. else语句

    else的搭配 与else语句配合使用有三种情况 if ...: else: if条件表达式不成立的时候执行else 注意else还可以与while循环和for循环组合在一起(这是一个全新的知识) 注 ...