A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

java里的数组为什么有length();而String 没有length()?

5 个回复

倒序浏览
你写反了吧。String是有length()方法的。没有length属性;而数组,只有length属性,没有length()方法。
属性,就是字段【Field】,方法是【Method】。属性一般表示那个类,有什么;而方法,表示那个类可以做什么,
或者由内向外,提供什么动作。最直观的区别就是,方法是方法名后跟括号(),括号内可能有参数。

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
String 的长度被设计成只能通过方法读取。专门为了防止出现类似 str.length = 5; 之类的语句。因为这是不合理的语句,用户是不应该这样设定字符串的长度的,应该只能读取它。在Java中,数组下标从O开始。数组中的元素个数length是数组类中唯一的数据成员变量。使用new创建数组时系统自动给length赋值。数组一旦创建完毕,其大小就固定下来。程序运行时使用length进行数组边界检查。如果发生越界访问,则抛出一个异常。

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
数组对象是没有任何方法的,只有一个唯一的属性length,数组只能array.length,返回的是该数组的长度;字符串对象是有length方法的,str.length()返回的是该字符串总的字符个数,楼主写错了,数组是没有length方法的,呵呵

回复 使用道具 举报
string 中有length()方法,数组中有length属性,
回复 使用道具 举报
数组有leng这个变量成员或者叫属性。。。String.length()方法。。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马