一维数组的创建

数组名 = new 数据元素类型[ 元素个数 ]

数组的内存模型

数组是存储多个相同类型变量的对象。数组的所有元素保存在堆内存中。

•创建一个数组就是在堆中创建一个数组对象。

•数组创建后立即拥有默认值。

•索引从0开始。

•连续分配

数组的初始化

在创建数组的同时就为数组元素分配空间并赋值

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

数组类型 数组名[ ] = {元素1,元素2,…}

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

数组类型 数组名[ ] = new 数据类型[ ]{元素1,元素2,…}

数组元素的访问

Java中,数组元素的下标从0开始

元素的下标可以是整型常量或整型表达式

数组名[元素下标] = 元素值;

int a[ ] ;

a = new int[5] ;

a[0] = 1;

a[1] = 2;

a[2] = 3;

a[3] = 4;

a[4] = 5;

数组元素的访问

循环遍历字符串数组{“red”,”orange”,”yellow”,“green”,“blue”,”purple”},并将其打印

String color[] = { "red", "orange", "yellow", "green", "blue", "purple" };

for (String c: color) {

System.out.println(c);

}

数组中的常见异常

// 异常一:数组没有创建

int a[] = null;

a[0] = 1;

System.out.println(a[0]);

// 异常二:下标越界

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

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

多维数组

多维数组的声明

二维数组的声明

数组类型 数组名 [ ] [ ]

数组类型[ ] [ ] 数组名

数组类型[ ] 数组名 [ ]

int a[ ] [ ] ;

int[ ][ ] b ;

int[ ] c[ ] ;

二维数组的创建

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

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

a = new int [3][4] ;

a = new int [3][ ] ;

a = new int [ ][4] ; //非法

必须声明行的个数

多维数组的初始化

数组类型 数组名[ ][ ] = { {元素11,元素12,…} , {元素21,元素22,… } }

数组类型 数组名[ ][ ] = new 数据类型[ ][ ] { {元素11,元素12,…} , {元素21,… } }

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

int a[ ][ ] = new int[ ][ ]{ {1,2,3}, {4,5}, {7} } ;

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

a[0] = new int[2];

a[1] = new int[3];

a[2] = new int[4];

a[0][0] = 1;

a[0][1] = 2;

多维数组的内存表示

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

多维数组的访问

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

// for

for (int i = 0; i < a.length; i++) {

for (int j = 0; j < a[i].length; j++) {

System.out.println(a[i][j]);

}

}

// for/each

for (int[] t: a) {

for (int e: t) {

System.out.println(e);

}

}

java color数组_java数组的学习相关推荐

  1. java二维数组遍历后转为一维数组_java数组(一)

    数组的定义 数组是相同类型数据的有序集合. 简单理解就是:数组是由若干个相同类型的数据,按照一定的顺序组合而成的.数组中的每一个数据我们可以称为元素,每个元素可以通过索引(下标)来访问(获取). 数组 ...

  2. java 改装电动_java 数组

    数组: 数组是同意变量的集合,不仅可以是基本数据类型,也可以是类的对象集合. 数组的缺点就是定长,不能随时扩张,所以一般是确定个数时用,不确定时一般用集合. 优点就是可以一下子定义多个相同类型的数据. ...

  3. java数组_Java数组

    java数组 Java Array is a container that can hold a fixed number of values of the same type. The values ...

  4. 初始化一个java空数组_Java 数组的两种初始化方式

    一.数组 1.数组中存储元素的类型是统一的,每一个元素在内存中所占用的空间大小是相同的,知道数组的首元素的内存地址,要查找的元素只要知道下标,就可以快速的计算出偏移量,通过首元素内存地址加上偏移量,就 ...

  5. java 动态二维数组_Java数组、动态数组、二维数组的应用

    一.认识数组 1.容器的概念 ​用于存储数据的一块内存称为容器,生活中有很多容器,例如水杯,衣柜,以及存放"东西" ​存放在容器中的数据,称为"元素" 2.为什 ...

  6. java实现初始化三角形数组_Java 数组、多维数组,动态、静态初始化,数组JVM内存模型分析...

    Java 数组.多维数组,动态.静态初始化,数组JVM内存模型分析 什么是数组 所谓数组,是具有相同数据类型的若干变量或者数据按照一定排序规则组合起来的一种数据存储格式.数组中的数据称为数组元素,我们 ...

  7. java创建一个未知长度的数组_Java数组的创建操作

    数组是一个固定长度的,包含了相同类型数据的 容器 步骤1:声明数组步骤2:创建数组步骤3:访问数组步骤4:数组长度步骤5:练习-数组最小值步骤6:答案-数组最小值 步骤 1 : 声明数组 int[] ...

  8. java hashmap 去重_java数组去重的两种方法

    我们对于数组元素的使用,有时候在创建数组的初期,并没有考虑过元素的重复问题.当我们想要不重复元素的数组时,就要再进行一步去重的工作.数组的去重有两种方法可以实现,一个是循环比较,另一个是hashSet ...

  9. java 反复器_Java数组去掉反复的方法集

    经经常使用到,有时候不仅仅是简单的基本类型,那种能够用set集合去重,好多时间用到的是我们自己定义的类型,以下举个样例(我这儿就那int举例了): 方法一. 这样的类似与选择排序算法,首先我们取i值, ...

最新文章

  1. 博客已经迁移至 http://barretlee.com/entry/,时而同步分享到这里
  2. 在IDEA中使用MyBatis Generator逆向工程生成代码
  3. android json转字符串数组,转换字符串到json数组出错
  4. Codeforces Round #470 (rated, Div. 2, based on VK Cup 2018 Round 1)B. Primal Sport
  5. LongAccumulator和DoubleAccumulator类如何工作?
  6. vuex 的模块化+命名空间
  7. 利用Jackson的JsonFilter来实现动态过滤数据列(数据列权限控制)
  8. 中国大陆物联网驶入快车道 台商抢上车
  9. [Z]四种浏览器对 clientHeight、offsetHeight、scrollHeight、clientWidth、offsetWidth 和 scrollWidth 的解释...
  10. GitHub 上排名前 100 的 Objective-C 项目简介
  11. python画树干_python教你画一棵树
  12. 如何修改hosts文件
  13. 一个好用的大文件传输工具
  14. uniapp基本语法/组件使用
  15. 频传上市,奈雪的茶优势与隐忧并存
  16. Java(二十二) -- 生产者消费者模式
  17. 【产业互联网周报】阿里增持菜鸟;微信支付宝向外国游客开放服务;百度推“区块链+智能城市”建设...
  18. 元宇宙3D设计系统【构思与展望】
  19. html5 canvas绘制圆形印章,以及与页面交互
  20. Google Code注册方法详解 Google Code网盘申请方法 1

热门文章

  1. 柯洁:我受够了AI围棋;联发科校园招聘,应届生年薪约45万元;Chrome 100发布 | 极客头条...
  2. 面试与工作差距大,程序员从准备到拿Offer全攻略
  3. 打破“打工人”魔咒,RPA 来狙击!
  4. Redis:从应用到底层,都在这儿了!
  5. 超级计算机与人工智能:大国超算,无人领航
  6. 微软与 OpenAI 达成合作,获得 GPT-3 独家使用授权!
  7. PowerJob 应对庞大任务的锦囊妙计:MapReduce
  8. 潘石屹没跑,他去学 Python 了
  9. 百度搜索大数据:“摆摊技巧”搜索热度暴涨655%;中国电信:将逐步关闭3G网络业务;IntelliJ IDEA新版发布|极客头条...
  10. 5G 手机的“高端”战事