一维数组

1)   int[] a;   //声明,没有初始化

2)   int[] a=new int[5];   //初始化为默认值,int型为0

3)   int[] a={1,2,3,4,5};   //初始化为给定值

4)   int[] a=new int[]{1,2,3,4,5};   //同(3)

int[] a=new int[5]{1,2,3,4,5};   //错误,如果提供了数组初始化操作,则不能定义维表达式

5)   int[] a;

a=new int[5];    //正确,同(2)一样

int[] a;

a={1,2,3,4,5};   //错误,数组常量只能在初始化操作中使用,如(3)

6)   int a[];

a[0]=1;   //错误,因为数组没有初始化,不能赋值

a[1]=2;

二维数组

1)   int[][] a;  //声明,没有初始化

2)   int[][] a=new int[2][3];    //初始化为默认值,int型为0

3)   int[][] a={{1,2},{2,3},{3,4}};   //初始化为给定值

int[][] a={{1,2},{2,3},{3,4,5}};   //没有错,数组空间不是连续分配的,所以不要求每一维的大小相同

4)   int[][] a=new int[2][];

a[0]=new int[3];  //a[0]其实就是一个数组

a[1]=new int[4];  //每一维的大小可以不一样;

5)   int[][] a=new int[][]{{1,2},{2,3},{3,4,5}};   //同(3)

int[] a=new int[5]{{1,2},{2,3},{3,4,5}};  //错误,如果提供了数组初始化操作,则不能定义维表达式

int[][] a=new int[2][];

a[0]={1,2,3,4,5};   //错误,数组常量只能在初始化操作中使用

6)   int[][] a=new int[2][];

a[0][1]=1;   //错误,第二维没有初始化,不能赋值,java.lang.NullPointerException异常

总结: 1.二维就是数组的数组,里面的数组大小不要求一样

2.不管一维还是二维,在使用前(赋值,访问)必须初始化,可以用new默认初始化,也可以用数组常量初始化

1.动态初始化:数组定义与为数组分配空间和赋值的操作分开进行;

2.静态初始化:在定义数字的同时就为数组元素分配空间并赋值;

3.默认初始化:数组是引用类型,它的元素相当于类的成员变量,因此数组分配空间后,每个元素也被按照成员变量的规则被隐士初始化。

实例:

TestD.java(动态)

程序代码

public class TestD

{

public static void main(String args[]) {

int a[] ;

a = new int[3] ;

a[0] = 0 ;

a[1] = 1 ;

a[2] = 2 ;

Date days[] ;

days = new Date[3] ;

days[0] = new Date(2008,4,5) ;

days[1] = new Date(2008,2,31) ;

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

}

}

class Date

{

int year,month,day ;

Date(int year ,int month ,int day) {

this.year = year ;

this.month = month ;

this.day = day ;

}

}

TestS.java(静态):

程序代码

public class TestS

{

public static void main(String args[]) {

int a[] = {0,1,2} ;

Time times [] = {new Time(19,42,42),new Time(1,23,54),new Time(5,3,2)} ;

}

}

class Time

{

int hour,min,sec ;

Time(int hour ,int min ,int sec) {

this.hour = hour ;

this.min = min ;

this.sec = sec ;

}

}

TestDefault.java(默认):

程序代码

public class TestDefault

{

public static void main(String args[]) {

int a [] = new int [5] ;

System.out.println("" + a[3]) ;

}

}

java数组详解_java数组详解相关推荐

  1. java的数组查找算法_java数组、排序算法、查找算法详解

    1.为什么定义数组要采用type[] arrayName;这种方式? 因为这种方式具有很好的可读性,使用这种方式很容易就可以理解这是定义一个变量,其中变量名是arrayName,变量的类型是type[ ...

  2. java获取数组的最小值_Java 数组获取最大和最小值的实例实现

    以下实例演示了如何通过 Collections 类的 Collections.max() 和 Collections.min() 方法来查找数组中的最大和最小值: Main.java 文件: impo ...

  3. js 数组 改变长度_Java数组,什么是Java数组?Java数组学习

    人的生命,似洪水奔流,不遇着岛屿和暗礁,难以激起美丽的浪花. 简介 数组是相同类型数据的有序集合 比如:[1,2,3] ['a','b','c'] 数组描述的是相同类型的若干个数据,按照一定的先后顺序 ...

  4. java数组初始化赋值_Java数组的三种初始化方式

    Java语言中数组必须先初始化,然后才可以使用.所谓初始化就是为数组的数组元素分配内存空间,并为每个数组元素附初始值. 注意:数组完成初始化后,内存空间中针对该数组的各个元素就有个一个默认值: 基本数 ...

  5. java数组末尾添加元素_java数组添加元素,java数组如何添加一个元素

    java数组如何添加元素 向数组里添加一个元素怎么添加,这儿总结有三种方法: 1.一般数组是不能添加元素的,因为他们在初始化时就已定好长度了,不能改变长度. 但有个可以改变大小的数组为ArrayLis ...

  6. java数组的声明_Java数组定义常用方法

    Java数组定义常用方法 Java中的数组.是一种简单的线性数据存储结构.他用牺牲自动扩展大小来换取与集合相比的唯一优势--查询效率的提升.Java中的数组有什么类型?我们要怎么定义这些数组呢?下面跟 ...

  7. java数组定义长度_JAVA数组的定义

    JAVA一维数组 一,注意 不可添加数组元素 不可改变数组长度 一个数组中的说有元素必须数据类型相同 二,创建方法三种 1直接添加元素 类型[] 数组名 = {元素,元素,元素,--}; int[] ...

  8. java数组变量定义_JAVA数组的定义及用法

    数组是有序数据的集合,数组中的每一个元素具有同样的数组名和下标来唯一地确定数组中的元素. 1. 一维数组 1.1 一维数组的定义 type arrayName[]; type[] arrayName; ...

  9. java 数组怎么求和_java数组求和怎么解决?有哪些方式?

    Java经典题目之一,数组的各种求和,今天小编就用一些例子带大家了解一下其中详情. 基础求和#include using namespace std; //数组求和 //方法一:时间复杂度为O(n), ...

最新文章

  1. 【亲测有效】在win10上如何安装Fortify17.10
  2. 使用yum管理软件包
  3. linux c remove 删除文件或目录函数
  4. 关于初学者markdown一些问题回答
  5. What are current fashion trends in Sydney?
  6. Tomcat数据源总结
  7. PHP is_null,empty以及isset,unset的区别
  8. ipad和iphone切图_如何在iPhone和iPad上密码保护照片
  9. 引路蜂地图API:Gis.Navigation包定义
  10. LeetCode 406. Queue Reconstruction by Height
  11. linux哪个模块允许保存文件,linux网络操作系统与实训 课后习题答案
  12. C++-实现matlab的meshgird(OpenCV)
  13. 毕设题目:Matlab验证码识别
  14. 自动驾驶之多传感器融合实践(1)------激光雷达点云数据处理
  15. Redis--huan
  16. webrtc中GCC拥塞控制模块之码率控制器AimdRateControl
  17. IDEA 2017.3.4 破解到2099年方法
  18. 京沪高铁全程提供WiFi无线网络技术揭密
  19. Hive自定义函数(字母大小写转换)
  20. 生成淘宝短链tb.cn

热门文章

  1. 微软职位内部推荐-Principal Development Lead
  2. VS Tips]Visual Studio 2008 Toolbox里控件消失(#13119)的问题
  3. php对称字符串,PHP实现简单的对称加密和解密方法 - str_split
  4. java月份去0_java – 使用月份解析日期而不是前导0
  5. 【PP生产订单】入门介绍(九)
  6. 40、Power Query-Text.Combine函数进阶
  7. 定价相关的主要用户出口
  8. 一个已婚女人,对于婚姻对于幸福的感悟
  9. Web Dynpro for ABAP 之 Web Dynpro Window Web Dynpro Application
  10. TABLES ABOUT CRM MARTETING