我想知道是否可以用一条直线的形式写这个。
if (config.getBoolean("storecommands.use-time")) {
    out.println("[" + (new SimpleDateFormat("MM/dd/yy HH:mm:ss")).format(new Date()) + "]: " + e.getMessage());
 else {
     out.println(e.getMessage());
 }
 out.close();我想也许是这样的:
(config.getBoolean("storecommands.use-time")) ? first : last;但我记得这只适用于设置变量。
有没有人知道像第一个代码块这样的代码是否可以写在一行w/o括号中,等等。
发布于 2014-01-12 23:27:22
您可以在这里使用条件运算符,但是它可能会以可读性为代价,所以我会重新考虑。无论如何,你都可以:
boolean b = config.getBoolean("storecommands.use-time");
String message = e.getMessage();    
out.println(b ? 
                "[" + (new SimpleDateFormat("MM/dd/yy HH:mm:ss")).format(new Date()) + "]: " + message
              :
                message);把这些都写在一行上是个坏主意,所以我把它分成几行。
https://stackoverflow.com/questions/21081622
复制相似问题