更新时间:2023-02-16 来源:黑马程序员 浏览量:

要搞清楚这个问题,我们先要明白数组的概念。通常我们讲的数组是说具有相同类型的数据集合,它们一般具有固定的长度,而且在内存中占据连续的空间。在C/C++语言中,数组名只是一个指针,这个指针指向了数组的首元素,既没有属性也没有方法可以调用,而在Java语言中,数组不仅有其自己的属性(例如length属性),也有一些方法可以被调用(例如clone方法)。由于对象的特点是封装了一些数据,同时提供了一些属性和方法,从这个角度来讲,数组是对象。每个数组类型都有其对应的类型,可以通过instanceof来判断数据的类型,示例如下:
public class SubClass {
public static void main(String[] args) {
int [] a = {1,2};
int [] [] b = new int[2][4];
String [] s = {"a","b"};
if(a instanceof int[])
System out.println("the type for a is int[]");
if(b instanceof int[][])
System out.println("the type for a is int[][]");
if(s instanceof String[])
System out.println("the type for a is String[]");
}
} 程序运行的结果为:
the type for a is int[] the type for b is int[][] the type for s is String[]
全国13城校区全覆盖|黑马程序员AI大模型开发(Python),就近学习、全国就业
2026-04-08黑马程序员AI大模型开发(Python)|大厂共建+实战赋能,学完即具备企业项目能力
2026-04-08黑马程序员AI大模型开发(Python)|5阶段体系化教学,从入门到精通全覆盖
2026-04-08黑马程序员AI大模型开发(Python)|培养企业应用型人才,适配行业核心需求
2026-04-08黑马程序员AI智能应用开发|上市品牌背书,大厂联合研发,打造AI复合型人才
2026-04-08全国13城校区全覆盖|黑马程序员AI智能应用开发,就近学、就近就业
2026-04-08