1、一维数组

  • 数组是用来存储一组相同数据类型数据的数据结构
  • 数组的元素可以是简单数据类型的数据,也可以是引用数据类型的数据
  • 无论数组内容是简单类型还是引用类型,数组自己本身都是一种引用类型
  • 每个数组元素都有下标,下标从0开始

定义一维数组

int array1[ ];
int [ ] array2,array3;

在数组定义中,不能指定数组的长度,需要在数组的创建阶段来指定

符号“[]”说明声明的是一个数组对象。这两种声明方式没有区别,但是第二种可以同时声明多个数组

// 创建大小为10个整型的数组
int[] array = new int[10]; // 创建大小为5个整型的数组并初始化
int[] array = {1, 2, 3, 4, 5}; // 等号右边的中括号不能填大小,有大括号中的具体数值决定
int[] array = new int[]{1,2,3,4,5};

2、length实例变量

int[] arr = new int[10];

arr.length 表示数组长度

3、一维数组复制

// 从 src 数组 srcPos 位置开始拷贝 length 长度到 dest 数组 destPos 开始的位置

// 参数1:原数组

// 参数2:复制原数组的起始位置

// 参数3:目标数组

// 参数4:目标数组存放的起始位置

// 参数5:复制的长度

System.arraycopy(src, srcPos, dest, destPos, length);

int[] arr1 = new int[];
int[] arr2 = new int[]; // 该语句会把 arr1 也指向 arr2 数组,改变 arr2 数组的值,arr1 数组的值也会改变
//arr1 = arr2; // 该语句会把 arr2 数组中的值复制到 arr1 数组中,改变 arr2 中的值,不会影响 arr1 数组
//System.arraycopy(arr2, 0, arr1, 0, arr2.length);

4、二维数组

int[][] two = new int[5][6];

two.length表示数组的行数,two[i].length表示数组的列数。

5、不规则数组

int[][] two = new int[4][];            // 数组有4行

two[0] = new int[1];  // 第1行有1列

two[0] = new int[2];      // 第1行有2列

two[0] = new int[3];      // 第1行有3列

two[0] = new int[3];      // 第1行有4列

6、for-each循环:用来遍历数组

for (数据类型 变量x : 遍历对象) {

  应用x的语句

}

// for-each 访问一维数组
public class Array {
public static void main(String[] args) {
int sum = ;
int[] arr = {, , , , };
for (int i : arr) {
sum += i;
}
System.out.println(sum);
}
}

结果:15

// for-each 访问二维数组
public class Array {
public static void main(String[] args) {
int sum = ;
int[][] arr = {{, },{, }};
for (int i[] : arr) {
for (int j : i) {
sum += j;
}
}
System.out.println(sum);
}
}

结果:10

Java 数组的定义和遍历的更多相关文章

  1. java 数组声明定义 数组内存分配 数组初始化 数组引用 数组的遍历

    一,数组的定义 Java 中定义数组的语法有两种: 1. type arrayName[]; 2. type[] arrayName;type 为Java中的任意数据类型,包括基本类型和组合类型,ar ...

  2. java 中二维数组的定义和遍历

    定义格式 * a 第一种定义格式: * int[][] arr = new int[3][4];// arr里面包含3个数组 每个数组里面有四个元素 * 上面的代码相当于定义了一个3*4的二维数组,即 ...

  3. Java数组的定义和使用

    如果希望保存一组有相同类型的数据,可以使用数组. 数组的定义和内存分配 Java 中定义数组的语法有两种: type arrayName[]; type[] arrayName; type 为Java ...

  4. JAVA数组的定义及用法

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

  5. Java数组的声明和遍历

    Java 数组 数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同. Java 语言中提供的数组是用来存储固定大小的同类型元素. 你可以声明一个数组变量,如 n ...

  6. 10、Java 数组的定义和使用

    1.数组的定义 首先举一个小例自:如果你现在需要定义100个int类型的变量,那么按照前俩节的做法为: int a = 1, b=2 , c=3.......; 可以发现我们的代码特别的冗余,而且不美 ...

  7. Java——数组的定义与使用

    数组的定义与使用 1.数组的基本概念 (1)数组的动态初始化: 数组首先先开辟内存空间,而后再使用索引进行内容的设置,这种定义数组的方式称为动态初始化 数组是引用数据类型,存在有内存分配问题.在使用前 ...

  8. java中一维数组的定义和遍历

    public class ArrayDemo1{ public static void main(String[] args){ //1 定义数组 并同时赋值 int[] arr = new int[ ...

  9. PHP数组的定义和遍历

    //常用函数//生成随机数//echo rand(3,33); //两个参数来确定随机数的范围为3-33 //日期时间函数echo time(); //取当前时间的UNIX时间戳//date_defa ...

随机推荐

  1. Struts2小例子

    第一个Struts 2.0例子 工具:MyEclipse 6.0.1 第一步:新建web project 第二步:为项目加入Struts 2.0 的jar包 官方下载地址:http://struts. ...

  2. 关于log4j.properties例子:DailyRollingFileAppender

    package com.v512.log4j; import org.apache.log4j.Logger; public class HelloLog4J { // 构造记录器,形参是记录器所在的 ...

  3. Spring Boot的核心

    1.1.1.   入口类和@SpringBootApplication Spring Boot的项目一般都会有*Application的入口类,入口类中会有main方法,这是一个标准的Java应用程序 ...

  4. Element UI 框架搭建

    Element UI 框架搭建 1.webpack 全局安装 npm install -g webpack 2.淘宝镜像cnpm安装 npm install -g cnpm --registry=ht ...

  5. PowerShell 在hyper-v中创建虚拟机

    # This script configures the Hyper-V machines used for the 50331 Course. # PowerShell 3.0 and Window ...

  6. fiddler抓取不到HTTPS响应

    火狐浏览器也安装证书了,但还是抓取不到HTTPS类型的数据包 解决办法:设置代理时在 为所有协议使用相同代理服务器(S)前打钩

  7. HDU - 4746预处理莫比乌斯反演

    链接 求[1,n] 和 [1,m]中有多少对数的GCD的素因子个数小于等于p 直接暴力做特定超时,所以我们想办法预处理,对于p大于18(1到5e5的最大素数因子个数)的情况,每一对都满足条件,O(1) ...

  8. java 数据库索引的注意事项

    索引缺点 1.虽然索引大大提高了查询速度,同时却会降低更新表的速度,如对表进行insert.update和delete.因为更新表时,不仅要保存数据,还要保存一下索引文件.2.建立索引会占用磁盘空间的 ...

  9. 关于Java类

    一个.java文件中可以有很多类.不过注意以下几点: 1.public 权限的类只能有一个(也可以一个都没有,但最多只有1个) 2.这个.java文件的文件名必须是public类的类名(一般的情况下, ...

  10. iOS自动化探索(一)WebDriverAgent安装

    WebDriverAgent FaceBook推出的一款iOS移动测试框架, 支持真机和模拟器, 同时支持USB, 官方是这样介绍的: https://github.com/facebook/WebD ...