【发布时间】:2018-07-04 14:33:17
【问题描述】:
我在这堂课中孤立了我原来的问题。它正在返回2 2。我第一次执行这段代码时得到1 1,我快疯了,我不明白这种行为
public class Test {
public static void main(String[] args) {
test("A");
}
public static void test(String cadena) {
System.out.println(cadena.length());
System.out.println("A".length());
}
}
【问题讨论】:
-
字母前有一个不可打印的字符。见HERE
-
这不是“返回”任何东西(它不应该,因为返回类型是
void)。 -
这样做:
for (char c : cadena.toCharArray()) { System.out.printf("char: %d, %s%n", (int) c, c); } -
什么意思? System.out.println 都应该打印 1
-
@Victor 检查图像。你有两个角色。即使你只看到一个。这就是“不可打印字符”的意思:你看不到它,但它就在那里。输出是正确的。
标签: java string string-length