Java 数组结构
Java中虽然数据类型不是对象,但是由数据基本类型组成的则是对象,在程序中引入数组可以更有效的管理和处理数据。
数组根据维数的不同分为:一维数组、二维数组和多维数组。
5.1 一维数组
5.1.1 创建一维数组
数组作为对象使用new关键字进行分配内存,必须首先定义数组变量所属的类型,即声明数组。声明一维数组有两种形式:
数组元素类型 数组名字[];
数组元素类型[] 数组名字;
注:
1.数组元素类型:决定了数组的数据类型,它可以是java中的任意的数据类型,包括基本数据类型和非基本数据类型。
2.数组名字:为一个合法的标识符。
3.符号“[]”:指明变量是一个数组类型变量类型,单个“[]”表示要创建的是一位数组。
【例】声明一位数组
int arr[] //声明int型数组,数组中的每个元素都是int型数值
String[]str //声明String数组,数组中的每个元素都是String型数值
声明数组后,还不能访问它的任何元素,因为声明数组仅仅是给出了数组名字的元素的数据类型,要想使用数组还要为其分配内存空间,且分配空间需要指明数组的长度,分配内存空间的语法格式:
数组名字=new 数组元素类型[数组元素的个数];
.数组名字:已经声明的数组变量的名称
.new:对数组分配空间的关键字。
.数组元素的个数:指定数组中变量的个数,即数组的长度。
【例】为数组分配内存
arr =new int[5];
5.1.2 初始化一维数组
数组可以与基本数据类型一样进行初始化的操作,数组的初始化可以分别初始化数组中的每个元素,数组的初始化有两种方式。
【例】初始化一维数组
int arr[]=new int[]{1,2,3,4} //第一种初始化方式
int arr2[]={1,2,3,4} //第二种初始化方式
5.2 二维数组
二维数组是应用最为广泛的一种数组,二维数组是指有两个底标的数组。
5.2.1声明二维数组
声明二维数组有两种方法,语法格式分别如下:
数组元素类型 数组名字[][];
数组元素类型[][] 数组名字;
注:
1.数组元素类型:决定了数组的数组类型,它可以是java中的任意的数据类型,包括基本数据类型和非基本数据类型。
2.数组名字:使用一个合法的标识符。
3.[][]:两个“[]”表示要创建的数组是二维数组。
【例】声明二维数组
float A[][];
5.2.2 创建二维数组
创建二维数组的过程,世纪实际上就是在计算机中申请一个存储空间。
【例】创建二维数组
int A [][]={1,2,3},{4,5,6}
通过上述代码创建了一个二维数组,A是数组名,实质上此二维数组相当于一个两行三列的矩阵,当需要取多维中的值时,可以使用下标来显示。
5.2.3 初始化二维数组
二维数组的初始化与一位数组的初始化类似,同样可以使用大括号来完成二维数组的初始化。语法格式:
type arrayname[][]={value1,value2,…value n}
type :数组数据类型
arrayname:数组名称,一个合法的标识符
value:数组中各元素的值。
【例】初始化二维数组
int mychar[][]={{12,23},{56,96}}
初始化二维数组后要明确数组的下标都是从0开始的。
Java 数组结构的更多相关文章
- Java选择结构和数组
Java选择结构和数组 一.Switch语句 二.if和switch区别 推荐使用if 三.函数 Java中的函数和方法是同一个词 四.数组 4.1.数组常见错误 五.内存机制 六.转换成十六进制 移 ...
- java实现无序数组结构
一.数组的2种定义方式 数据类型 [] 数组名称 = new 数据类型[数组长度]; 这里 [] 可以放在数组名称的前面,也可以放在数组名称的后面,一般放在名称的前面 数据类型 [] 数组名称 = ...
- Java 内存结构备忘录
本文详细描述了 Java 堆内存模型,垃圾回收算法以及处理内存泄露的最佳方案,并辅之以图表,希望能对理解 Java 内存结构有所帮助.原文作者 Sumith Puri,本文系 OneAPM 工程师编译 ...
- JAVA循环结构
JAVA循环结构:顺序结构只能执行一次,如果要执行多次需要用到循环 JAVA中的循环结构有while:do...while:for: 1.while循环:先判断布尔表达式中的值,若为true,执行循环 ...
- JVM规范系列第2章:Java虚拟机结构
本规范描述的是一种抽象化的虚拟机的行为,而不是任何一种(译者注:包括 Oracle 公司自己的 HotSpot 和 JRockit 虚拟机)被广泛使用的虚拟机实现. 记住:JVM规范是一种高度抽象行为 ...
- java内存结构学习的一种打开方式
用Java开发已经四年,中途学了python,Scala,接触这些开发语言后,总感觉Java就像老奶奶裹脚——又臭又长.然,Java虐我千百遍,我待Java如初恋.聊起Java,不得不谈Java的内存 ...
- Java 语言结构【转】
Java 语言结构 基础:包(Package).类(Class)和对象(Object) 了解 Java 的包(Package).类(Class)和对象(Object)这些基础术语是非常重要的,这部分内 ...
- 【Java虚拟机结构(第1部分)数据类型】摘要
<Java虚拟机规范(Java SE 7版)>作者:Tim Lindholm.Frank Yellin.Gilad Bracha.Alex Buckley 摘要:第二章 Java虚拟机结构 ...
- java 数组的基本概念
1.数组的基本概念 数组指的是一组相关变量的集合.例如:如果说现在要定义100个整型变量,如果按照我们以前的思路,我们可能这样定义: public class demo { public static ...
随机推荐
- python all any函数(相反)
''' all() 函数用于判断给定的可迭代参数 iterable 中的所有元素是否都为 TRUE,如果是返回 True,否则返回 False. 元素除了是 0.空.FALSE 外都算 TRUE. 语 ...
- 深入理解javascript按值传递与按引用传递
https://segmentfault.com/a/1190000012829900
- C++:第一个c++程序
// C++ 环境搭建: https://www.bilibili.com/video/BV1nt4y1r7Ez?t=535 // 学习资料:https://www.runoob.com/cplusp ...
- 【模拟】选数 luogu-1037
AC代码 #include <bits/stdc++.h> using namespace std; #define ms(a,b) memset(a,b,sizeof(a)) typed ...
- java跨平台性说明
一.举例说明 我们知道,只要是用标准C开发的程序,使用不同的编译器编译后的可执行文件是可以在对应平台运行的,比如windows可以使用VC编译,那编译后的exe文件就可以在windows下运行:liu ...
- 什么是jstl表达式,怎么应用
1.介绍 JSTL(JSP Standard Tag Library),JSP标准标签库,可以嵌入在jsp页面中使用标签的形式完成业务逻辑等功能.jstl出现的目的同el一样也是要代替jsp页面中的脚 ...
- Python入门 -- 001
在Windows系统下安装python: 从Python的官方网站(http://www.python.org/)下载最新版的程序安装包. 安装完成后设置路径,使得在Windows系统的CMD中能够通 ...
- spring第三章
第三章 实现AOP AOP:面向方面编程,AOP能够使您将所有模块共有的特性与应用程序的主要业务逻辑隔离开 一.AOP介绍 横切关注点:在Web应用程序中,有一些服务(如登录.安全和事务管理)不是应用 ...
- jvm源码解读--04 常量池 常量项的解析CONSTANT_Class_info
接上篇的继续 ConstantPool* constant_pool = ConstantPool::allocate(_loader_data, length, CHECK_(nullHandle) ...
- js排序——sort()排序用法
sort() 方法用于对数组的元素进行排序,并返回数组.默认排序顺序是根据字符串Unicode码点. 语法:array.sort(fun):参数fun可选.规定排序顺序.必须是函数.注:如果调用该方法 ...