我是新来的Java语言代码后崩溃(刚开始大约2个星期前)使用格式化
基本上,用户输入他们的年/月/日,他们以出生,我用这个信息进行数学计算,以显示他们的年龄。
我需要0-9的数字作为01,02,03 ...因此,我搜索了四周,发现我可以使用Decimal.Format,然后打印出格式。
我的代码崩溃,每当它到达println(twodigits.format)部分没有mater我放它的地方。没有显示我需要解决的错误。
它为什么这样做,是否有更好的方法来做到这一点?我需要它始终是2位数字,否则计算将不起作用。
这里是我的代码的一部分,我可以提供更多,如果需要。
DecimalFormat twodigits = new DecimalFormat("00");
System.out.println("Calculating...");
Integer CurrentDate2 = Integer.valueOf(CurrentDate);
Integer BirthDate2 = Integer.valueOf(BirthDate);
int a = CurrentDate2.intValue();
int b = BirthDate2.intValue();
int age = (a - b)/1000;
Thread.sleep(300);
System.out.println(".");
Thread.sleep(300);
System.out.println(".");
Thread.sleep(300);
System.out.println(".");
System.out.println(twodigits.format(CurrentDate));
System.out.println(twodigits.format(BirthDate));
任何帮助表示赞赏!
我猜'CurrentDate'和'BirthDate'是'String's? 'DecimalFormat.format()'需要一个数字值。 – shmosel
如果您正在从用户/键盘进行输入,则可以从扫描仪对象开始。 – Sedrick
“你需要它是两位数的计算不起作用,”我很困惑? – Sedrick