java数组的问题

小弟在学JAVA,在学到下一章老师会讲到数组,叫我们自己先看一遍,我看了两遍了,但还是不理解数组的概念是什么?用途是什么?

2.数组的定义格式以及可以和几种数据类型定义?
数组里的length是什么?怎么用?在书上看到这样一句a .length有是什么意思?
3.数组和其他类型的变量定义赋值是一个意思吗?比如int i=10;

请口头描述一下数组的概念和用途,或者用抽象的方式比划也可以,但不要太长,不要书面话就可以了,因为老师会提问的。
谢谢了
最新回答
深蓝菇凉

2024-11-07 01:30:52

1.数组就是用来存放一组同类型数据的容器。比如说你们班有十个人为一组,那么就要把10套桌椅放在一起,来让这10个人坐一起。

数组定义的方式一共有3种,但是推荐使用的是: int[] a;这种形式。所有数据类型都可以传入数组,但是每个数组中只能存入同一类型的对象。比如我这个a数据定义的是整型数组,那我就只能存入整型的数据。如果你想把不同的数据类型都往同一个容器里放,那就要用到集合,这个你们在以后会学。

int[] a=new int[10];的意思就是你已经准备好了10套桌椅了,但是现在还没人坐进去,在计算机来说,就是在内存里为a数组划分了10个存储单元。要是想要人坐进去,就还要对数组进行赋值。length是数组里的一个方法,调用这个方法会返回这个数组的长度。比如a.length();程序就会告诉我我这个数组有多少个元素。在这里就是10.

这和其他类型的变量赋值时一个意思,要记住JAVA是面向对象的程序语言,在JAVA看来,数组,基本数据类型,引用数据类型都是对象,因此他们的赋值的内在含义是一样的,只是在表现形式是有所不同。
怕黑

2024-11-07 00:20:32

1 数组字面意思很简单,就是一组数据
用来存储一组相同类型的数据
2 以String类为例
a) String[] array = new String[10];
后面的10表示这个数组有10个元素,从array[0]到array[9]
然后给每个元素赋值 如:array[0] = "str1";
b) String[] array = null;
array = new String[10];
这种方法就是把a)方法中的定义方式分开来写,意思一样
c) String[] array = new String[]{"str1", "str2", "str3"};
这种方法是在定义数组的同时,也给每个元素赋了值
相当于:
String[] array = new String[3];
array[0] = "str1";
array[1] = "str2";
array[2] = "str3";

数组可以存放任意类型的数据

length就是数组的长度,java里把数组也当成类来看待,length就是这个类的一个公开的属性,直接可以通过array.length来调用即可

3 都是类,所以都相同
顺便说一下,int不算是真正的类,所以他的定义和标准类的定义方式是不同的,真正的类定义方式,拿Object类来说,应该是:
Object obj = new Object();
甜警司

2024-11-07 00:49:22

还记得我们小学写字的方格本吧

假设 一页只有一行方格 共有10个方格
我们在每个方格中写入数字
那么这就成了一个int型的数组

可以这样来定义 int[] array=new int[10];
array.length 表示这个数组的长度 就是共有多少个方格

数组的特点是写进去的必须是同类型的数据(至于是什么类型随便你定义)

如上面 每个方格都写入的是数字 那么这是个int型的数组
如果写入的是字符串 那么这是个Strng型的数组

不管是基本类型 还是对象类型都可以建立数组
Object[] object=new Object[10];
远山浅

2024-11-07 00:06:55

数组的类型有很多 比如用整形数组举例吧
int[] a = new int[10]
然后你设定上这里面10个数都是什么比如1,2,3,4,5,6,7,8,9,0
然后比较他们的大小(也就是排序)
int temp=0;
for(int i=0;i<10;i++){
for(int j=i+1;j<10;j++){
if(a[i]<a[j]){
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
这样输出后排序的结果就是9,8,7,6,5,4,3,2,1,0了
数组的功能就是为了存放相对类型的数据用的
基本上各种数据类型都有相对应的数组
数组中的length是数组的元素个数 比方说刚才那个例子排序后 a.length=2 那么那个内容就是8
数组定义时一般不用类似于int i=10;不直接给出直 一般是先定义再赋值
int[] a=new int[3];
a[0] = 1;
a[1] = 2;
a[2] = 3;

循环读取的时候
int j=1;
for(int i=0;i<3;i++){
a[i] = j;
j++;
}
等等吧 这是最简单的
星空伪装的忧蓝

2024-11-07 00:18:41

数组有点像我们的坐标,有一维的,二维的,和三维的。数组里存放的数据类型要是一样的。
a.length可以取的数组的长度。
数组符号是[],符号里面表示的是数组的长度。数组的长度可以在定义数组的时候就确定,也可以以后在确定。