public static String formatAmountUpToTwoDecimalNumber(String amount)
{
if(amount==null || "".equals(amount))
{
return "";
}
Double doubleAmount = Double.valueOf(amount);
double myAmount = doubleAmount.doubleValue();
NumberFormat f = new DecimalFormat("###,###,###,###,##0.00");
String s = f.format(myAmount);
return s;
}
Run Code Online (Sandbox Code Playgroud)
"###,###,###,###,##0.00",这种模式的目的究竟是什么?我认为它有两个目的
但为什么有"0"而不是"#"十进制之前?这零的目的究竟是什么?谢谢您的帮助.
byte b1 = 3;
byte b2 = 0;
b2 = (byte) (b2 + b1); // line 3
System.out.println(b2);
b2 = 0;
b2 += b1; // line 6
System.out.println(b2);
Run Code Online (Sandbox Code Playgroud)
在第3行,如果我们不将结果类型转换为字节,那么这是一个编译错误 - 这可能是因为加法的结果总是int而int不适合一个字节.但显然我们不必在第6行进行类型转换.这两个语句,第3行和第6行都不等同吗?如果不是那么还有什么不同?
public void testFunc(Object o) {
System.out.println("testFunc-Object");
}
public void testFunc(String s) {
System.out.println("testFunc-String");
}
Run Code Online (Sandbox Code Playgroud)
这两种方法都在测试类中.如果我从测试类的main方法调用以下方法,将调用哪个方法?
Test t = new Test();
t.testFunc(null);
Run Code Online (Sandbox Code Playgroud)
在这种特殊情况下,testFunc(String)被称为,但为什么呢?我很感激你的帮助.