码迷,mamicode.com
首页 > 编程语言 > 详细

Java中length、length()、size()的区别

时间:2020-04-15 16:29:11      阅读:67      评论:0      收藏:0      [点我收藏+]

标签:vat   private   ==   数组   str   zha   区别   har   test   

首先区分下length和length():

length不是方法是属性,数组的属性;

1 public static void main(String[] args){
2   int[] intArray = {4,5,6};
3   System.out.println("这个数组的长度是:"+intArray.length);        
4 }

 

length()是字符串String的一个方法:

1 public static void main(String[] args){
2   String string = "好好学习,天天向上";
3   System.out.println("这个字符串的长度是:"+string.length());
4 }

 

到length()方法中看一下底层实现:

1 private final char value[];
2 
3 public int length(){
4   return value.length;
5 }

所以到最后要找的还是length这个底层的属性。

 

size()方法是List集合的一个方法:

1 public static void main(String[] args) {
2     List<String> testList = new ArrayList<String>();
3     testList .add("zhangsan");
4     testList .add("lisi");
5     testList .add("wangwu");
6     System.out.println("这个list的长度是:" + list.size());
7 }

 

List是没有length()方法的;

ArrayList的一段源码:

 1 private final E[] a;
 2  
 3 ArrayList(E[] array) {
 4   if (array==null)
 5     throw new NullPointerException();
 6   a = array;
 7 }
 8  
 9 public int size() {
10   return a.length;
11 }

 

由此可以看出List的底层实现其实就是数组,size()方法最后要找的还是数组的length属性;

准确来说size()方法是针对集合而言,除了List,还有Map和Set也有size()方法。

记:

  length - 数组的属性;

  length() - String的方法;

  size() - 集合的方法;

Java中length、length()、size()的区别

标签:vat   private   ==   数组   str   zha   区别   har   test   

原文地址:https://www.cnblogs.com/xxhxs-21/p/12706148.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!