从Java中的length & length()开始

小伙伴们注意了!

小编在这里给大家送上关注福利:

搜索微信公众号“速学Java”关注即可领取小编精心准备的资料一份!

首先,你能快速回答以下问题吗?

我向不同级别的开发者提出了这个问题:入门级和中级级。

他们不能正确或自信地回答问题。

IDE在提供方便的代码自动补全的同时,也带来了“表面理解”的问题。

在本文中,我将解释关于Java数组的一些关键概念。

答案是:

问题是为什么数组有length字段而字符串没有?

或者为什么string有length()方法,而array没有?

1。为什么数组有长度属性?

首先,数组是一个容器对象,它包含一个类型的固定数量的值。

创建数组后,其长度不会更改[1]。

数组的长度可用作最终的实例变量长度。

因此,长度可以看作数组的定义属性。

数组可以通过两种方法创建:1)数组创建表达式和2)数组初始化器。

创建时,指定了大小。

上面的示例中使用了一个数组创建表达式。

它为至少一个嵌套层指定元素类型、嵌套数组的层数和数组的长度。

这个声明也是合法的,因为它指定了嵌套的一个级别。

数组初始化器创建数组并为其所有组件提供初始值。

它是用逗号分隔的表达式列表,用大括号{和}括起来。

例如,

2. 为什么没有一个类“数组”定义类似于“字符串”?

因为数组是对象,所以下面的代码是合法的。

数组包含从类对象继承的所有成员(克隆除外)。为什么没有数组的类定义?我们找不到数组.java文件。一个粗略的解释是它们对我们是隐藏的。你可以考虑这个问题,如果有一个类数组,它会是什么样子?它仍然需要一个数组来保存数组数据,对吧?因此,定义这样一个类不是一个好主意。其实我们可以用下面的代码得到数组的类:

输出:

"class [I"代表类对象"array with component type int"的运行时类型签名。

3.为什么String有length()方法?

字符串的备份数据结构是一个char数组。

没有必要定义不是每个应用程序都需要的字段。

与C语言不同,字符数组在Java中不是字符串。

最后,想学习Java的小伙伴们!

关注“速学java”公众号就可以拿到一份我为大家准备的Java学习资料!

对Java感兴趣的小伙伴也可以加 小编V❤: suxuejava

猜你喜欢

转载自blog.csdn.net/suxue_java/article/details/88354897