【问题标题】:Java: empty char without spaceJava:没有空格的空字符
【发布时间】:2016-01-03 20:52:30
【问题描述】:

我正在制作一个程序,如果它

11-02-1999 很好

但如果它高于零,它会给出

11-12-1999

我不想要那个空格。我如何删除它。 这是我的代码

nuldag = (dag < 10 ? '0' : '\0');
nulmonth = (month < 10 ? '0' : '\0');
System.out.println("Date is:  " +nulday+day+"-"+nulmonth+month+"-"+year);   

【问题讨论】:

  • 你有nuldagdag,但你的意思是nuldayday
  • 我是荷兰人,只是翻译错误。
  • 您后来使用了nulday,因此您需要将它们重命名为相同。

标签: java null char ternary-operator


【解决方案1】:

你不能用一个字符来做到这一点。改用字符串:

 String nuldag = (dag < 10 ? "0" : "");
 String nulmonth = (month < 10 ? "0" : "");
 System.out.println("Date is:  " + nuldag + day  + "-" + nulmonth + month + "-" + year);

编辑:
我添加了 Peter Lawrey 的建议,即使用字符串格式可以更好地解决此类格式化任务,例如

System.out.printf("Date is %2d-%2d-%d%n", day, month, year);

【讨论】:

  • 这是问题的答案,但我要补充一点,更好的解决方案是使用格式System.out.printf("Date is %2d-%2d-%d%n", day, month, year); +1
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-07-25
  • 2019-08-05
  • 2013-10-16
  • 2018-11-25
  • 2012-02-26
  • 1970-01-01
  • 2017-08-29
相关资源
最近更新 更多