如何在不使用任何字符串方法和 NO 导入的情况下确定填充字符串的字符列表的长度



我有一个这样的数组:

MyString str = new MyString(new char[]{'a','b','c','d'});

MyString对这个问题并不重要。

这是我到目前为止尝试过的:

public int length()
{

String s = ""; 
for (int i = 0; i<data.length; i++)
s = s+data[i];

数据包含包含字符串的列表。

int i = 0; 
try 
{
for(i=0; ; i++)
{
s.charAt(i);
}
}
catch(Exception e)
{
}
return  i;
}

我正在使用的这种方法有效,但使用charAt(i); 这是不允许的。我如何根据问题中的规则尝试此操作?

--> expected output: str.length(); // 6 

您可以捕获数组越界异常。

char[] a = { 'a', 'b', 'c', 'd', 'e'
};
int length = -1;
try {
for (;;) {
char c = a[++length];
}
}
catch (ArrayIndexOutOfBoundsException ae) {
}
System.out.println("length = " + length);

注意:这不是使用异常的好方法。 正如我之前所说,如果您有数组,则只需使用array.length.

相关内容

最新更新