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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黑马任雪刚 中级黑马   /  2012-5-20 15:54  /  2757 人查看  /  11 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

数组中的length和字符串中的length()有什么不同呢?求详解。

11 个回复

倒序浏览
数组中的  是数组的空间  比如 int[] a=int[10]; 哪怕a里边什么都没有放(实际上初始化的时候放入了0) 所以a.lenth()为10;
字符串的就是实际长度了
回复 使用道具 举报
本帖最后由 于潇 于 2012-5-20 16:10 编辑

数组中的length表示数组中元素的个数,它是一种属性;
字符串中的length()表示计算串中字符的个数,它是一种方法。

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

评分

参与人数 1技术分 +1 收起 理由
攻城狮 + 1 赞一个!

查看全部评分

回复 使用道具 举报
length是属性,一般集合类对象拥有的属性,取得集合的大小。
    例如:数组.length就是取得数组的长度。
length()是方法,一般字符串类对象有该方法,也是取得字符串长度。
    例如:字符串.length();
1 java中的length属性是针对数组说的,比如说你声明了一个数组,想知道这个数组的长度则用到了length这个属性.

2 java中的length()方法是针对字符串String说的,如果想看这个字符串的长度则用到length()这个方法.
这个例子来演示这两个方法和一个属性的用法
class LenDemo
{
    public static void main(String[] args)
        {
        String []list={"aa","bbb","cccc"};
        String a="aaacdfght";
        System.out.println(list.length);
        System.out.println(a.length());
    }
}
输出的值为:
3

9

评分

参与人数 1技术分 +1 收起 理由
攻城狮 + 1 赞一个!

查看全部评分

回复 使用道具 举报
数组是一个存放数据元素的容器,数组中的length是数组的一个属性,它可以直接获取数组中的元素个数。
而字符串是一个特殊对象,要获取字符串中包含的字符数,就要使用对象调用length()方法的形式获得。
所以length是属性,length()是方法,这点可以从写法上也可以看出。
回复 使用道具 举报
数组中的length表示数组中元素的个数;字符串中的length表示串中字符的个数  很对!! 某种程度上,你可以将字符串看做是元素内容为字符带 '\0’ 的数组。数组和字符串都提供这一个length的属性,通过这个属性可以访问他们的长度。
回复 使用道具 举报

  数组中没有length()这个方法,但是数组中有length这个属性。用来表示数组的长度。

      String中有length()这个方法。用来得到字符串的长度。

回复 使用道具 举报
余宏 中级黑马 2012-5-20 19:52:21
8#
1 java中的length属性是针对数组说的,比如说你声明了一个数组,想知道这个数组的长度则用到了length这个属性.

2 java中的length()方法是针对字符串String说的,如果想看这个字符串的长度则用到length()这个方法.

3.java中的size()方法是针对泛型集合说的,如果想看这个泛型有多少个元素,就调用此方法来查看!


回复 使用道具 举报
彩虹 中级黑马 2012-5-20 20:16:43
9#
       数组中的length是指该数组的存储空间的大小,即容量,我们通常是这样定义一个数组的  int arr[]=new int[8];这就说明数组arr的存储空间大小为8,也即是数组的长度为8
       而字符串的length是指该字符串中的字符的实际个数,字符有多少个,其length就为多少
回复 使用道具 举报
一个是字段(也就是属性),一个是方法(是行为)
回复 使用道具 举报
length和length()最大区别就是()
也就是:length是属性,而length()是方法。  名称后面有括号的都是方法

数组中有length这个属性来查看数组的长度,而String类中没有length这个属性,需要调用length() 这个方法来查看字符串的长度。
回复 使用道具 举报
数组中的length属性用于获取数组的实际长度
字符串中的length()方法用于得到字符串的长度
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马