目录
2. length()表示方法,是String类对象的一个成员方法,用于求String实体内容的长度
总结:length——数组的属性;length()——String的方法;size()——集合的方法;
1、length表示属性,不是方法
length绝大部分时候用于数组, 是数组的一个属性值,用于求数组长度(查阅JDK文档发现length只在某些类中有其他的特殊作用,比如在MidiMessage中表示MIDI 消息中的字节数,包括状态字节和任何数据字节;在OptionalDataException中表示当前缓冲区中可供读取的原始数据的字节数。)
/**
* 数组用属性length求长度
*/
int[] nums = {1, 2, 3, 5};
int length2 = nums.length;
String[] str3 = {"ag", "iaug", "365"};
int length3 = str3.length;
char[] ss = {'3', 's'};
int length4 = ss.length;
2. length()表示方法,是String类对象的一个成员方法,用于求String实体内容的长度
/**
* String类对象用成员方法length()求长度
*/
String str = "laghasilg";
int length = str.length();
String str2 = new String("ieur");
int length1 = str2.length();
进入length()方法看一下实现
private final char value[];
public int length() {
return value.length;
}
注释中的解释是
@return the length of the sequence of characters represented by this object.
即由该对象所代表的字符序列的长度,所以归根结底最后要找的还是length这个底层的属性;
3. size()方法,是List集合的一个方法
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
System.out.println("这个list的长度为:" + list.size());
}
在List的方法中,是没有length()方法的
看一段ArrayList的源码
private final E[] a;
ArrayList(E[] array) {
if (array==null)
throw new NullPointerException();
a = array;
}
public int size() {
return a.length;
}
由这段就可以看出list的底层实现其实就是数组,size()方法最后要找的其实还是数组的length属性;
另外,除了List,Set和Map也有size()方法,所以准确说size()方法是针对集合而言。