数组是具有相同类型的数据的集合,是一种引用数据类型,一般具有固定的长度,并且在内存中占据连续的空间。

数组声明:数据类型[ ] 数组名;             数据类型 数组名[ ];

如:int[ ] array;       int array[ ];        char[ ] array;           String[ ] array;

数组创建:

(1)先声明后创建:数据类型[ ] 数组名;    数组名 = new 数据类型[数组长度];
如:int[ ] array;    array = new int[10];     //创建一个长度为10的整型数组

(2)声明的同时创建数组:数据类型[ ] 数组名 = new 数据类型[数组长度];

如:int[ ] array = new int array[10];     //数组长度必须指定

数组的初始化:

声明数组的同时给数组赋值,叫做数组的初始化。

如:int[ ] array={1,2,3,4,5,6,7,8,9,10};      //数组的长度就是初始化时所给数组元素的个数

数组元素的引用:

数组名[下标];    //下标从0开始

数组长度:

属性length表示数组的长度,如:array.length

数组的遍历:

增强型for循环(foreach循环)

如:int[ ] array={1,2,3,4,5};

  for(int n:array)

    System.out.println(n);

二维数组:也是存放相同数据类型的数据,可以看成是多个一维数组组成。

二维数组的声明:(1)数据类型[ ][ ]  数组名;      (2)数据类型  数组名[ ][ ];        (3)数据类型[ ]  数组名[ ];

如:int [ ][ ]  array;       float array[ ][ ];         double[ ] array[ ];

二维数组的创建:

(1)先声明,后创建

数据类型[ ][ ] 数组名;

数组名 = new 数据类型[行][列];

如:int[ ][ ] array;

  array[ ] = new int[3][3];     // 创建一个包含3个一维数组,每个一维数组有3个元素的int类型的二维数组

(2)声明的同时进行创建

如:int[ ][ ] array = new int[3][3];      //创建一个包含3个一维数组,每个一维数组有3个元素的int类型的二维数组

创建数组的时候,可以只指定行数,但不可以只指定列数(行数首先必须是确定的)。

float[ ][ ] array = new float[3][ ];  //未指定列数,每行相当于一个一维数组,需要分别创建。

float[0] = new float[3];   //第1行有3个元素

float[1] = new float[4];    //第2行有4个元素

float[2] = new float[5];    //第3行有5个元素,每一行的元素个数是可以不相同的。

二维数组的引用:与一维数组相似,行列的index值均从0开始。即[0][0]号位置为起始元素。如:3行2列位置元素为array[2][1]。

二维数组的初始化:与一维数组类似,创建的同时为数组元素赋值,即为数组的初始化。

如:int[ ][ ] num = { {1,2,3} ,{4,5,6} ,{7,8,9}};    //创建了一个3行3列的二维数组,num[1][2]的值为6

二维数组的遍历:

循环输出二维数组的内容

 public class Test {
public static void main(String[] args){
int[][] array={{35,72,93},{54,77},{65}}; //初始化一个二维数组
for(int i=0;i<array.length;i++){
for(int j=0;j<array[i].length;j++){
System.out.print(array[i][j]+" "); //循环输出二维数组的内容
}
System.out.println();
}
}
}

数组的属性和方法

在Java语言中,数组提供了length属性来获取数组的长度,String提供了length()方法来计算字符串的长度。由于对象的特点是封装了一些数据,同时提供了一些属性和方法,从这个角度讲,数组是对象。

如:int[] a={1,2,3};a.length可得到数组长度

String s="hello";   s.length()可得到字符串长度

Java基础笔记(十)—— 数组的更多相关文章

  1. Java基础笔记 – Annotation注解的介绍和使用 自定义注解

    Java基础笔记 – Annotation注解的介绍和使用 自定义注解 本文由arthinking发表于5年前 | Java基础 | 评论数 7 |  被围观 25,969 views+ 1.Anno ...

  2. 【转】Java基础笔记 – 枚举类型的使用介绍和静态导入--不错

    原文网址:http://www.itzhai.com/java-based-notes-introduction-and-use-of-an-enumeration-type-static-impor ...

  3. Java 基础类型转换byte数组, byte数组转换基础类型

    Java 基础类型转换byte数组, byte数组转换基础类型 Java类型转换 java类对象转化为byte数组

  4. Java基础语法(7)-数组

    title: Java基础语法(7)-数组 blog: CSDN data: Java学习路线及视频 1.数组的概述 数组(Array),是多个相同类型数据按一定顺序排列的集合,并使用一个名字命名,并 ...

  5. Java基础语法(8)-数组中的常见排序算法

    title: Java基础语法(8)-数组中的常见排序算法 blog: CSDN data: Java学习路线及视频 1.基本概念 排序: 是计算机程序设计中的一项重要操作,其功能是指一个数据元素集合 ...

  6. 黑马程序员----java基础笔记中(毕向东)

    <p>------<a href="http://www.itheima.com" target="blank">Java培训.Andr ...

  7. 黑马程序员----java基础笔记上(毕向东)

    ------Java培训.Android培训.iOS培训..Net培训.期待与您交流! ------- 笔记一共记录了毕向东的java基础的25天课程,分上.中.下 本片为上篇,涵盖前10天课程 1. ...

  8. Java基础笔记05-06-07-08

    五.今日内容介绍 1.方法基础知识 2.方法高级内容 3.方法案例 01方法的概述 * A: 为什么要有方法 * 提高代码的复用性 * B: 什么是方法 * 完成特定功能的代码块. 02方法的定义格式 ...

  9. java基础学习总结——数组

    一.数组的基本概念 数组可以看成是多个相同类型数据组合,对这些数据的统一管理. 数组变量属引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量. 数组的元素可以是任何数据类型,包括基 ...

随机推荐

  1. Windows 下GitHub 安装和使用

    一.官网注册和设置 1.登录官网,注册账号,其中用户名以后会用到. 2.创建仓库.使用公开仓库方式创建,公开仓库免费.(右上角->加号->new repository) 第一行:仓库名字. ...

  2. Gym - 101196G :That's One Hanoi-ed Teacher (递推)

    题意:给定当前汉诺塔的状态,问还有多少步走完,不合法输出“No”. 思路:显然可以一层一层试探下去的.我们设三个柱子为“起始”,“中转”,“终点”,当前状态的最大的盘子不可能在中转站处:如果在起始站, ...

  3. HDOJ(1069)最长下降子序列

    每个箱子可有3种叠加方式,所以有3*n个箱子.将箱子按长度由大到小排序,有求箱子按宽度的最长下降子序列的高度之和即可. #include<cstdio> #include<algor ...

  4. 问题15:如何判断字符串a是否以字符串b开头或结尾

    方法一:使用正则表达式的^和$实现 '^000':表示,只匹配字符串的开头,若开头是 '000' ,则返回 ['000'] : '000$':表示,只匹配字符串的结尾,若结尾是 '000' ,则返回 ...

  5. Java常见设计模式之代理模式

    指由一个代理主题来操作真实主题,真实主题执行具体的业务操作,而代理主题负责其它相关业务的处理.比如生活中的通过代理访问网络,客户通过网络代理连接网络(具体业务),由代理服务器完成用户权限和访问限制等与 ...

  6. SpringMvc之参数绑定注解详解之三

    2. @RequestHeader.@CookieValue @RequestHeader 注解,可以把Request请求header部分的值绑定到方法的参数上. 示例代码: 这是一个Request ...

  7. qextserialport打不开com10及以上的串口

    需要在portname前添加\\\\.\\这样就可以了!! 例如 QString portname; portname.append("\\\\.\\").append(ui-&g ...

  8. github 换行符自动转换功能

    最近想把自己的一个Qt工程同步到github上,但是当自己把代码从仓库中签出来的时候编译的时候总是出现一些很奇葩的错误,一开始以为是源文件编码的问题,改了编码以后问题还是没有解决,我比较了一下两个工程 ...

  9. Random简介

    Random类 (java.util) Random类中实现的随机算法是伪随机,也就是有规则的随机.在进行随机时,随机算法的起源数字称为种子数(seed),在种子数的基础上进行一定的变换,从而产生需要 ...

  10. SpringCloud01 服务提供者和消费者

    说明:服务消费者直接利用RestTemplate调用服务提供者,这种使用方式只是适用于微服务数量比较少的项目,如果微服务的数量比较多建议使用SpringCloud提供的Eureaka组件. 注意:实现 ...