如何计算java中char数组的长度,不使用lenth属性

RT,发现java中的String不是以'\0'结尾的。想研究研究自己实现java String中的一些东西,发现char数组没有'\0'结尾, 不用lenth属性都不晓得计算长度.

利用charAt(int i)函数一直往后读,直到下标越界冒异常,把异常捕捉跳出循环,代码如下:
String s = "abcd";
int i = 0;
while(true)
{
try
{
s.charAt(i);
i++;
}
catch(Exception e)
{

break;
}
}
System.out.println(i);

如果只是要计算长度,不用length的话,使用新循环遍历,然后计数就可以了,不知道新循环底层有没有用length,反正我是没用。