【发布时间】:2010-10-24 12:54:31
【问题描述】:
我正在尝试调试一些东西,我想知道下面的代码是否可以返回 true
public boolean impossible(byte[] myBytes) {
if (myBytes.length == 0)
return false;
String string = new String(myBytes, "UTF-8");
return string.length() == 0;
}
是否有一些我可以传递的值会返回 true?我只是传入了一个 2 字节序列的第一个字节,但它仍然会产生一个字符串。
为了澄清,这发生在 PowerPC 芯片上,Java 1.4 代码通过 GCJ 编译为本机二进制可执行文件。这基本上意味着大多数赌注都是关闭的。我主要想知道 Java 的“正常”行为,或者 Java 的规范是否做出了任何承诺。
【问题讨论】: