说明
java中数组的三种定义方法
在java中,数组是常用的工具。 今天我们来谈谈数组的定义
[java] view plain copy /**
数组的三种定义方法
* 1.数组类型[]数组名称=new数组类型[数组长度];
* 2.数组类型[]数组名称={数组0、数组1、数组2、数组3、 (;
* 3.数组类型[]数组名称=new数组类型[]{数组0、数组1、数组2、 (;
*/
公共类whatever {
publicstaticvoidmain (string [ ] args ) {
//第一个例子:
String[] test1=new String[6];
test1[0]=“数组0”
test1[1]=“数组1”
//第二个示例:
String[] test2={ "数组0 ","数组1 ","数组2 ","。 ”。 (;
//第三个示例:
String[] test3=new String[]{ "数组0 "、"数组1 "、"数组2 "、"。 ”。 (;
}
}
java中数组的定义和使用方法
以下编辑介绍了如何在java中定义和使用数组。 我觉得小编很好。 现在就分享给大家,也供大家参考。
数组:一组相关的变量
数组是相关数据的集合,一个数组实际上是一组变量,数组根据使用情况可以分为一维数组、二维数组、多维数组
关于数据的一些
不使用数组定义100个整形变量: int i1; int i2; int i3
使用数组输入int i[100];
数组定义: int i[100]只是伪代码,表示意思
一维数组
一维数组可以存储上千万个数据,这些数据的类型完全相同。
要使用java数组,需要执行两个步骤:声明数组并为该数组分配内存。
声明形式1
声明一维数组:数据类型数组名称[]=null;
为数组分配非内存:数组名称=new数据类型[长度]
声明形式2
声明一维数组:数据类型[]数组名称=null;
java数据类型大致分为两种
基本数据类型
int、long操作时本身就是具体的内容
引用数据类型:数组、类和接口
引用的可能是一个内存的使用权、一个内存空间和多人同时使用
案例声明数组
package com.qn.array;
公共类测试{
publicstaticvoidmain (string [ ] args ) {
int score [ ]=空; //声明数组
score=new int[3]; //打开空间,大小为3
}
}
在数组的声明格式中,数据类型是数组元素的数据类型,常见的有整形、浮点型、字符型等
数组名称是用于统一同一组数据类型元素的名称,命名规则和变量的名称相同
声明数组后,实际上将此数组的名称保存在堆栈内存中,并连接到了将数组放置在堆内存中所需的内存中。 齐产固定是向编译器传达在被宣言的数组中容纳多少个要素,new根据括号内的长度由指令编译器
基本数据类型偶读取有默认值。 int 0; 引用数据类型的默认值为空
事例
package com.qn.array;
公共类测试{
publicstaticvoidmain (string [ ] args ) {
int score [ ]=空; //声明数组
score=new int[3]; //打开空间,大小为3
system.out.print (“score [0]=”score [0];
system.out.print (“ ts core [1]=”score [1];
system.out.print (“ ts core [2]=”score [2];
}
}
堆栈存储器的解释
在数组操作中,保存在堆栈存储器中的始终是数组的名称,只有堆栈内的区域是开放的。 数组永远不能使用。 如果没有指向的内存对,则无法使用。 必须使用new关键字来释放新的内存对区域。 然后,将存储器使用权传递给对应的堆栈存储器。 而且,1个堆内存区域同时被指向多个堆栈内存区域。 例如,如果一个人可以有多个名字,则人相当于一对存储器,名字相当于堆栈存储器
在声明数组的同时分配内存空间
声明数组的同时不装载内存
数据类型数组名称[]=new数据类型
型[个数]int score[]=new int[10];
声明一个元素个数为10的整形数组score,同时开辟依靠内存空间工期使用
java中,由于整形数据类型占用的空间为4个byte,而整个数组score可保存的元素有10个。所以上例中占用的内存共有4*10=40个字节
数组的访问
数组中元素的表示方法
想要访问数组里的元素可以利用索引来完成,java的数组索引标号由10开始,以一个score[10]的整形数组为例,score[0]代表第一个元素
一直向下,最后一个为score[9]
取得数组的长度
在java中取得数组的长度(也就是数组元素的长度)可以利用数组名称.length完成,
数组名称.length--返回一个int类型的数据
package com.qn.array;
public class Test {
public static void main(String[] args) {
int score[]=null;//声明数组
score=new int[3];//开辟空间,大小为3
System.out.println(score.length);
}
}
结果
数组的静态初始化之前的数组,所采用的都是动态初始化,所有的内容在数组声明的时候并不具体的指定,而是以默认值的形式出现
静态初始化是指在数组声明后直接为数组指定s体的内容
如果想要直接在声明的时候给数组赋初始值,可以采用大括号完成,只要在数组的生命格式后面加上初值的赋值即可,
数据类型 数组名 []={初始值0,初始值1,初始值3,。。.。初始值n};
package com.qn.array;
public class Test {
public static void main(String[] args) {
int score[]={1,2,3,4,5,6};//使用静态初始化声明数组
System.out.println(score.length);
}
}
结果
范例求出数组中的最大值和最小值
package com.qn.array;
public class Test {
public static void main(String[] args) {
int score[]={45,12,8,23,89,56};//使用静态初始化声明数组
int max=0;
int min=0;
max=min=score[0];
for (int i = 0; i 《 score.length; i++) {
if(score[i]》max){
max=score[i];
}
if(score[i]
min=score[i];
}
}
System.out.println(“最大值:”+max);
System.out.println(“最小值:”+min);
}
}
结果
范例排序,在操作中排序是比较常用的
从大到小
package com.qn.array;
public class Test {
public static void main(String[] args) {
int score[]={45,12,8,23,89,56};//使用静态初始化声明数组
int temp=0;
for (int i = 0; i 《 score.length; i++) {
for (int j = 0; j 《 score.length-1; j++) {
if(score[i]》score[j]){
temp=score[i];
score[i]=score[j];
score[j]=temp;
}
}
}
for (int i = 0; i 《 score.length; i++) {
System.out.print(score[i]+“t”);
}
}
}
结果
这个时候不要被i值所迷惑 if(score[i]》score[j]){
这一步主要知识为了比较,实际上完成之后输出的时候是根据j的值排序的
二维数组
如果可以把一维数组当做几何中的一条线图形,那么二维数组就相当于一个表格
A B
1 姓名 年龄
2 齐宁 21
3 齐燕 23
4 齐威 26
二维数组声明的方式和以为数组的类似,内存分配也一样是用new这个关键字
其实声明与分配内存的格式如下
动态初始化
数据类型 数组名[][];
数组名=new 数据类型[行的个数][列的个数];
声明并初始化数组
数据类型 数组名[][]=new 数据类型[行的个数][列的个数];
静态初始化
二维数组的存储
声明二维数组score 同时开辟一段内存空间
int score[][]=new int[4][3];
整体数据score可保存的元素是4*3=12个,在java中,int数据类型所占用的空间为4个字节,因此该整形数组占用的内存共为4*12=48个字节
事例
package com.qn.array;
public class test1 {
public static void main(String[] args) {
int score[][] = new int[4][3];
score[0][1] = 30;
score[1][0] = 31;
score[2][1] = 32;
score[2][2] = 33;
score[3][1] = 34;
score[1][1] = 35;
for (int i = 0; i 《 score.length; i++) {
for (int j = 0; j 《 score[i].length; j++) {
System.out.print(score[i][j]+“t”);
}
System.out.println(“”);
}
}
}
结果
二维数组静态初始化
用到的时候才会开辟空间,不用的(红色部分)则不开辟空间
多维数组
一般只是用到二维数组
三维数组简单了解
package com.qn.array;
public class test1 {
public static void main(String[] args) {
int score[][][]={
{
{5,1},{6,7}
},
{
{9,4},{8,3}
}
};
System.out.print(score[0][0][0]+“t”);
System.out.print(score[0][0][1]+“t”);
System.out.print(score[0][0][0]+“t”);
System.out.print(score[0][0][1]+“t”);
System.out.print(score[1][0][0]+“t”);
System.out.print(score[1][0][1]+“t”);
System.out.print(score[1][1][0]+“t”);
System.out.print(score[1][1][1]+“t”);
}
}
以上这篇java中数组的定义及使用方法(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考。
打开APP阅读更多精彩内容
点击阅读全文