黑马程序员技术交流社区

标题: length与length()区别 [打印本页]

作者: yinbolove576    时间: 2013-6-12 14:51
标题: length与length()区别
本帖最后由 yinbolove576 于 2013-6-12 16:22 编辑

貌似记得length是数组长度的方法,而length()是字符串的方法,有时候写着写着就搞混淆了,求科普,求方法,谢谢!

作者: 杜光    时间: 2013-6-12 14:57
  1. String c = "aaa";
  2. System.out.println(c.length());    //结果为3

  3. String[] d = new String[2];
  4. d[0]="1";d[1]="2";
  5. d.length; //结果为2
复制代码
length与length()都是求长度的属性。length是针对数组的函数,而length是指字符的长度
作者: 薛淑凯    时间: 2013-6-12 15:11
length应该是数组的一个属性,应该是一个变量,而length()是一个函数,用来获得长度
作者: 吕祥艺    时间: 2013-6-12 15:31
length 是变量一般用于判断数组长度,length()是方法一般用于判断字符串长度
作者: Heart    时间: 2013-6-12 15:33
本帖最后由 Heart 于 2013-6-12 15:56 编辑

1 java中的length属性是针对数组说的,比如说你声明了一个数组,想知道这个数组的长度则用到了length这个属性.

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

下面这个例子用来演示length()方法和length属性的用法:
  1. public static void main(String[] args) {

  2. String []list={"ma","cao","yuan"};

  3. String a="macaoyuan";

  4. System.out.println(list.length);

  5. System.out.println(a.length());

  6. }
复制代码

作者: hm_李大强    时间: 2013-6-12 15:59
length是成员属性,在数组中这个属性是用来获取数组长度的,是公有的。length()是成员方法。在字符串中是用来获取字符串长度的。String类中也有length属性,但是它是封装的,只能通过length()返回。用的多就记住不会搞混了。
作者: hm_李大强    时间: 2013-6-12 16:00
本帖最后由 hm_李大强 于 2013-6-12 16:02 编辑

length是成员属性,在数组中这个属性是用来获取数组长度的,是公有的。
length()是成员方法。在字符串中是用来获取字符串长度的。String类中也有length属性,但是它是封装的,只能通过length()返回。用的多就记住不会搞混了。

作者: yinbolove576    时间: 2013-6-12 16:22
感谢各位“黑友”的回答,看来细节中突显各种问题啊,呵呵,谢谢各位了哈,长知识了{:soso_e113:}
作者: 007诸葛亮    时间: 2013-6-12 16:27
数组只有length方法没有length() ,字符串才有length().都是求长度的
例如:
int[] array = new int[]{1,3,-1,5,-2};int i = array.length;String c = "array";c.length();
public class string {
public static void main(String args[]){
int a[]={1,3,2,5,2,5};
String s=""+a[0];
for(int i=1;i<a.length;i++)
{
  
s+=","+a[i] ;
  
  
}
String b[]={"ss","sss","ss"};
System.out.println(s);
System.out.println(s.length());
System.out.println(b.length);
}
}


作者: 不破大地    时间: 2013-6-12 16:39
这个是要记住的,楼主,length()方法中这个括号里是可以传参数的,而数组的length方法不可以。
作者: 老衲玩IT    时间: 2013-8-27 21:18
数组长度是固定的length是数组对象的属性,用来记录元素个数
String中通过length()获得字符数量方法,其实String内部是用固定的长度的char[]数组存储字符串,只是它被私有封装了,不能直接访问该数组,只能通过String对外开放的方法来访问。
作者: yinbolove576    时间: 2013-8-27 21:21
老衲玩IT 发表于 2013-8-27 21:18
数组长度是固定的length是数组对象的属性,用来记录元素个数
String中通过length()获得字符数量方法,其实S ...

{:soso_e113:}谢谢回帖~~~





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2