之前编写代码时候,在遍历一个字符数组的时候,总是把他的长度用一个变量保存,然后在for循环中使用这个长度变量。类似这样的:
char[] abc ;
int len = abc.length;
for(int i=0;i<len;i++){```}
这样写是不想每次循环的时候都去调用求字符数组的长度的方法,今天看String类型的源码,突然发现我不知道字符数组的长度是怎么获取的,它不是像别的语言那样,把第一个位置用来保存数组长度,也没有对应的求数组长度的方法。
有没有大牛知道char[]的length的获取原理是什么????
你这样写对着呢,直接把len换成abc.length~也可以
另外 关于length属性, 一旦数组被创建,他的长度就是固定的了。数组的长度可以作为final实例变量的长度。因此,长度可以被视为一个数组的属性。
最后,你这个~char[] abc ; 难道不报错?~你没有初始化数组~~
嗯嗯。看来我需要看看java对数组的处理机制。上面那段代码是我解释用的,不是我跑的代码。