打印String的前两个元素,不使用null-check和try-catch

时间:2013-11-15 09:43:01

标签: java

我得到一个问题,即如果String为空,如何打印String的前两个元素而不进行空检查和使用try-catch语句。

String并不总是null,它可以为null,因此必须在不使用空指针检查和try-catch语句的情况下处理此情况。

这个问题在一次采访中被问到,所以起初可能很奇怪,但如果被问到应该有一个有效的答案。

感谢。

1 个答案:

答案 0 :(得分:1)

您可以使用字符串连接中null替换为字符串"null"的事实:

void foo(String s) {
   String s2 = "" + s; // Handle the case where s is null.
   System.out.println((s2 + " ").substring(0,1));  // Print space if string is shorter than 1 chars
   System.out.println((s2 + "  ").substring(1,2)); // Print space if string is shorter than 2 chars
}