今天我们要开始来讲讲Java中的数组,包括一维数组和二维数组的静态初始化和动态初始化

数组概述:

数组可以看成是多个相同类型数据的组合,对这些数据的统一管理;

数组变量属于引用数据类型,数组也可以看成是对象,数组中的每一个元素相当于该对象的成员变量;

数组中的元素可以是任何数据类型,包括基本数据类型和引用数据类型;

一维数组的声明:

声明方式: 例如; int a [ ]  = new int [3];

Java语言中 声明是不能指定其长度[数组中元素的个数];

非法声明; int a [5];

数组对象的创建:

public  class Test {

   public static void main (String args[ ] ) {

     int [ ] s;

     s = new int [5];

     for(int i = 0; i < 5; i ++) {

     s[i] = 2 * i + 1;

     }

   }

}

一维数组初始化

动态初始化:

public class Test {

  public static void main (String args [ ] ) {

  int a [ ];

  a =  new int [3];

  //int a [ ] = {1,2,3};

  Date days [ ];

  days = new Date [3];

  days [0]  = new Date(1,4,20040);

  days [1]  = new Date(2,4,20040);

  days [2]  = new Date(3,4,20040);

  }

}

class Date {

  int year,month,day;

  Date (int y,int m,int d) {

    year = y; month = m; day = d;

  }

}

静态初始化

public class Test {

  public static void mian (String args [  ] ) {

    int a[ ]  = new int [ ] {3,9,8};

    Date days[ ]  = {

    new Date(1,4,2004),

    new Date(2,4,2004),

    new Date(3,4,2004)

    };

  }

}

class Date {

  int year,month,day;

  Date(int y,int m,int d) {

    year  = y; month = m;day = d;

  }

}

二维数组

二维数组可以看成数组为元素的数组,例如:

int a [ ][ ] = {{1,2},{3,4,5,6},{7,8,9}};

二维数组初始化

静态初始化:

  int intA [ ] [ ] = {{1,2},{2,3},{3,4,5}};

  int intB [ 3] [ 2] = {{1,2},{2,4},{4,5}};  非法

动态初始化:

  int a [ ] [ ] = new int [3] [5];

  int b [ ] [ ] = new int [3] [ ];

  b[0] = new int [2];

  b[1] = new int [3];

  b[2] = new int [5];

Java中一维,二维数组的静态和动态初始化的更多相关文章

  1. Java中的二维数组

    Java 中的二维数组 所谓二维数组,可以简单的理解为是一种"特殊"的一维数组,它的每个数组空间中保存的是一个一维数组. 那么如何使用二维数组呢,步骤如下: 1. 声明数组并分配空 ...

  2. Java 中的二维数组

    所谓二维数组,可以简单的理解为是一种“特殊”的一维数组,它的每个数组空间中保存的是一个一维数组. 那么如何使用二维数组呢,步骤如下: 1. 声明数组并分配空间 或者 如: 2. 赋值 二维数组的赋值, ...

  3. java中的二维数组基础知识

    二维数组基本知识,毕竟常见的有:概念,初始化,遍历 概念: 理解二维数组,首先要先理解一维数组是什么.一维数组是个容器,存储相同数据类型的容器(这里不再做一位数组的具体介绍).二维数组就是用来存储一维 ...

  4. 【转】java中定义二维数组的几种写法

    原文链接 注:以下的 type[][] var 也可以这样申明 type var[][] type为数组的类型,var为变量名 写法一:行列固定的数组 //定义二维数组写法1 class Test { ...

  5. java中随机二维数组中寻找最大值并输出坐标

    public static void main(String[] args) { int x=0; int y=0; int a[][]=new int[5][5]; int max=-Integer ...

  6. java学习之二维数组

    java当中的二维数组,存储一组比较特殊的对象.他存储一个数组,同时存储的数组当中又存储着元素. java二维数组的声明方式一: class Arr2Demo { public static void ...

  7. iOS中的二维数组

    首先我们知道OC中是没有二维数组的,二维数组是通过一位数组的嵌套实现的,但是别忘了我们有字面量,实际上可以和C/C++类似的简洁地创建和使用二维数组.这里总结了创建二维数组的两种方法以及数组的访问方式 ...

  8. Java基础教程——二维数组

    二维数组 Java里的二维数组其实是数组的数组,即每个数组元素都是一个数组. 每个数组的长度不要求一致,但最好一致. // 同样有两种风格的定义方法 int[][] _arr21_推荐 = { { 1 ...

  9. C#中读取二维数组每位的长度

    C#中的二维数组,如int[,] A=new int[a,b];则 a=A.GetLength(0);即可获得二维数组中第一维的长度. b=A.GetLength(1);即可获得二维数组中第二维的长度 ...

随机推荐

  1. 如何美观地打印 Python 对象?这个标准库可以简单实现

    前不久,我写了一篇文章回顾 Python 中 print 的发展历史 ,提到了两条发展线索: 明线:早期的 print 语句带有 C 和 Shell 的影子,是个应用程序级的 statement,在最 ...

  2. RANSAC简史(一)——RANSAC之初

    在开始正式的介绍之前,先做一个简单的定义,以免产生歧义: 1.本文中的“数据点”是指: 1)对于直线拟合.平面拟合等问题,即为相应的二维/三维坐标点: 2)对于从匹配点中估计基本矩阵.单应矩阵等问题, ...

  3. 设计模式(C#)——03建造者模式

    推荐阅读:  我的CSDN  我的博客园  QQ群:704621321       当一个复杂对象由一些子对象构成,并且子对象的变化会导致复杂对象的修改.这时我们需要提供一种"封装机制&qu ...

  4. MSIL实用指南-数学运算

    C#支持的数学运算是加.减.乘.除.取模,它们对应的指令是Add.Sub.Mul.Div.Rem. 这五个运算都需要两个参数,它们的通用步骤1.生成加载左边变量2.生成加载右边变量3.生成运算指令 实 ...

  5. Java 安全之:csrf防护实战分析

    上文总结了csrf攻击以及一些常用的防护方式,csrf全称Cross-site request forgery(跨站请求伪造),是一类利用信任用户已经获取的注册凭证,绕过后台用户验证,向被攻击网站发送 ...

  6. pickle 序列化对象

    # 序列化对象 import pickle mylist=[[1,2,3,4,5,6,7],["abc","xyz","hello"],[1 ...

  7. HDU5988 - 2016icpc青岛 - G - Coding Contest 费用流(利用对数化乘为加

    HDU5988 题意: 有n个区域,每个区域有s个人,b份饭.现在告诉你每个区域间的有向路径,每条路有容量和损坏路径的概率.问如何走可以使得路径不被破坏的概率最小.第一个人走某条道路是百分百不会损坏道 ...

  8. POJ-2153Colored Sticks解题报告+欧拉回路,字典树,并查集;

    传送门:http://poj.org/problem?id=2513 题意:给你许多木棍,木棍两端都有颜色,问能不能首尾相接,要求颜色相同. 参考:https://www.cnblogs.com/ku ...

  9. codeforces 814 D. An overnight dance in discotheque (贪心+bfs)

    题目链接:http://codeforces.com/contest/814/problem/D 题意:给出奇数个舞者,每个舞者都有中心坐标和行动半径,而且这些点组成的园要么相互包含要么没有交集求,讲 ...

  10. JS执行机制详解,定时器时间间隔的真正含义

     壹 ❀ 引 通过结果倒推过程是我们常用的思考模式,我在上一篇学习promise笔记中,有少量关于promise执行顺序的例子,通过倒推,我成功让自己对于js执行机制的理解一塌糊涂,js事件机制,事件 ...