黑马程序员技术交流社区

标题: 属性与方法的区别 [打印本页]

作者: H-Deka    时间: 2014-3-26 17:17
标题: 属性与方法的区别
数组、集合、或者文件的length和length(),这两个经常用错,他们怎么区分的,什么时候到底用哪个?
作者: awkflf11    时间: 2014-3-26 17:51

在数组中,,用length...他是属性;;;

在集合、文件中,,用length()表示;;

它是调用的方法,,直接在API文档里,可以查到的。


    调用   int length()的方法



作者: linweiwen    时间: 2014-3-26 20:48
awkflf11 发表于 2014-3-26 17:51
在数组中,,用length...他是属性;;;

在集合、文件中,,用length()表示;;

楼上你说的不对吧?集合是用size()方法,没有length()。

  1. import java.io.File;
  2. import java.io.IOException;
  3. import java.util.*;

  4. public class Test2 {
  5.         public static void main(String[] args) throws IOException {

  6.                
  7.                 int a[] = {1,2,3};
  8.                 Collection b = new ArrayList();
  9.                 b.add("1");b.add("2");b.add("3");
  10.                 File f = new File("C:\\Temp\\Test2.java");
  11.                 f.createNewFile();
  12.                
  13.                 System.out.println(a.length);
  14.                 System.out.println(b.size());
  15.                 System.out.println(f.length());
  16.         }
  17. }
复制代码


哪个对应用哪种,看上面的小程序。
至于经常用错这个问题,就只能多做几次习题才能解决了。

例如,你要求数组长度,或者遍历数组的时候,就用 数组.length;
求集合大小就用 集合.size() ,遍历集合元素要用Iterator。
文件的话,倒是用得不多,先熟练上面两个的用法吧。
作者: 盛德成    时间: 2014-3-26 21:32
linweiwen 发表于 2014-3-26 20:48
楼上你说的不对吧?集合是用size()方法,没有length()。

请问这个代码是怎么贴上去的啊
作者: linweiwen    时间: 2014-3-26 21:51
盛德成 发表于 2014-3-26 21:32
请问这个代码是怎么贴上去的啊

回复框有个<>的符号,点一下你就知道le。
作者: syusikoku    时间: 2014-3-27 17:12
一般情况下,属性是没有()的,方法有(),但是如果遇到了注解anotation,这里面的变量就要注意了,它里面的变量可以有(),因为调用者要给变量赋值。赋的值就是在()里面的。
作者: 杨殿生    时间: 2014-3-27 17:55
一个是自己的属性,一个是本身含有的方法,数组用length,集合用length()
作者: 王峰峰    时间: 2014-3-27 21:26
1、在数组中使用的事length,它是一个属性。
作者: 心?=忐§忑]    时间: 2014-3-27 22:33
数组是通过length属性得到长度的   
  具体对象是通过length()方法得到长度的,也有使用getlength()方法的(如果可以得到长度)   
   




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