dim|private|public,数组名(维数及大小) as 类型。
dim|private|public,定义数组作用域。
维数及大小,即数组是几维数组以及每个维的大小类型。
数据类型,数组的类型'。
数组:是一组相关变量的集合数组是一组相关数据的集合,一个数组实际上就是一连串的变量,数组按照使用可以分为一维数组、二维数组、多维数组
数据的有点不使用数组定义100个整形变量:int i1;int i2;int i3
使用数组定义 int i[100];
数组定义:int i[100];只是一个伪代码,只是表示含义的
(1)一维数组
一维数组可以存放上千万个数据,并且这些数据的类型是完全相同的,
使用java数组,必须经过两个步骤,声明数组和分配内存给该数组,
声明形式一
声明一维数组:数据类型 数组名[]=null;
非配内存给数组:数组名=new 数据类型[长度];
声明形式二
声明一维数组:数据类型 [] 数组名=null;
(2)java数据类型分为两大类
1基本数据类型
int、long *** 作的时候本身就是具体的内容
引用数据类型:数组、类、接口
引用传递的就是一个内存的使用权,一块内存空间,可能有多个人同时使用
2事例声明数组
数组的声明格式里,数据类型是数组元素的数据类型,常见的有整形、浮点型、与字符型等
数组名是用来统一这组相同数据类型元素的名称,其命名规则和变量的相同
数组声明后实际上是在栈内存中保存了此数组的名称,结下了是要在堆内存中配置数组所需要的内存,齐产固定是告诉编译器,所声明的数组要存放多少个元素,而new 则是命令编译器根据括号里的长度。
基本数据类型偶读有其默认值:int 0;只要是引用数据类型默认值就是null事例
声明数组的同时分配内存空间
声明数组的同时非配内存
数据类型 数组名[]=new 数据类型[个数]
int score[]=new int[10];
声明一个元素个数为10的整形数组score,同时开辟依靠内存空间工期使用
java中,由于整形数据类型占用的空间为4个byte,而整个数组score可保存的元素有10个。所以上例中占用的内存共有410=40个字节
(3)数组的访问
数组中元素的表示方法
想要访问数组里的元素可以利用索引来完成,java的数组索引标号由10开始,以一个score[10]的整形数组为例,score[0]代表第一个元素
一直向下,最后一个为score[9]
(4)取得数组的长度
在java中取得数组的长度(也就是数组元素的长度)可以利用数组名称length完成,
数组名称length--返回一个int类型的数据
(5)数组的静态初始化
之前的数组,所采用的都是动态初始化,所有的内容在数组声明的时候并不具体的指定,而是以默认值的形式出现
静态初始化是指在数组声明后直接为数组指定具体的内容
如果想要直接在声明的时候给数组赋初始值,可以采用大括号完成,只要在数组的生命格式后面加上初值的赋值即可,
数据类型 数组名 []={初始值0,初始值1,初始值3,初始值n};
范例排序,在 *** 作中排序是比较常用的从大到小
这个时候不要被i值所迷惑 if(score[i]>score[j]){
这一步主要知识为了比较,实际上完成之后输出的时候是根据j的值排序的
(6)二维数组
二维数组声明的方式和以为数组的类似,内存分配也一样是用new这个关键字
其实声明与分配内存的格式如下
动态初始化
数据类型 数组名[][];
数组名=new 数据类型[行的个数][列的个数];
声明并初始化数组
数据类型 数组名[][]=new 数据类型[行的个数][列的个数];
静态初始化
(7)二维数组的存储
声明二维数组score 同时开辟一段内存空间
int score[][]=new int[4][3];
整体数据score可保存的元素是43=12个,在java中,int数据类型所占用的空间为4个字节,因此该整形数组占用的内存共为412=48个字节
事例
(8)二维数组静态初始化
用到的时候才会开辟空间,不用的(红色部分)则不开辟空间多维数组一般只是用到二维数组三维数组简单了解
java中定义一个字符串数组方式如下: 1String[] str={"AAA","BBB","CCC"}; 2String str[]={"AAA","BBB","CCC"}; string类型和其他基本类型相似,创建数组时,有上述两种方式。最为常见的方式是这样的:
var arr = [];arr是变量名,你自己随意取(只要符合命名规范即可)
如上表示创建了一个新数组。
数组赋值有两种,一种是创建的时候赋值,还与一种是创建后再赋值,如下
创建时赋值:
var arr = ['HTML5学堂', 2];// 创建了一个数组,数组有两个元素,第一个是字符串HTML5学堂,第二个是数字2
创建后再赋值:
arr[0] = 'HTML5学堂';
arr[1] = 2;
// 创建一个空数组,给第一个数组元素赋值为HTML5学堂,第二个数组元素赋值为2
除了这种最为常见的创建数组方法之外,还有这种(平日不怎么用,也不推荐在实际中使用):
var arr2 = new Array('HTML5学堂', 2);声明数组的语法为在数组名后加上用方括号括起来的维数说明。本接仅介绍一
维数组。下面是一个整型数组的例子:
int array[10];
这条语句定义了一个具有10个整型元素的名为array的数组。这些整数在内存中
是连续存储的。数组的大小等于每个元素的大小乘上数组元素的个数。方括号
中的维数表达式可以包含运算符,但其计算结果必须是一个长整型值。这个数
组是一维的。
下面这些声明是合法的:
int offset[5+3];
float count[52+3];
下面是不合法的:
int n=10;
int offset[n]; /在声明时,变量不能作为数组的维数/
二、用下标访问数组元素
int offset[10];
表明该数组是一维数组,里面有10个数,它们分别为offset[0],offset[1],…
…offset[9];千万注意,数组的第一个元素下标从0开始。一些刚学编程的人
员经常在这儿犯一些错误。
offset[3]=25;
上面的例子是把25赋值给整型数组offset的第四个元素。
在赋值的时候,可以使用变量作为数组下标。
main()
{
int i,offset[10];
for(i=0;i<10;i++) scanf(%d,&offset[i]);
for(i=9;i>=0;i--) printf(%d ,offset[i]);
printf(\n);
}
题目的意思是先输入10个整数,存入到数组中,然后反序输出。java中定义一个字符串数组方式如下:
1String[] str={"AAA","BBB","CCC"};
2String str[]={"AAA","BBB","CCC"};
string类型和其他基本类型相似,创建数组时,有上述两种方式。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)