我需要一些帮助,使用循环舍入到相等的位置。我有一些可行的代码,但这是一个非常尴尬的方法,我不认为这是好的编码,真的需要一些for循环的帮助。格式位置 - java
我已经声明上述,我会将其解析为我的主类。
我需要实现一个for循环,帮助整齐此代码,并删除所有的“如果”和“否则,如果”声明,任何帮助将非常感谢一些帮助。
谢谢
我需要一些帮助,使用循环舍入到相等的位置。我有一些可行的代码,但这是一个非常尴尬的方法,我不认为这是好的编码,真的需要一些for循环的帮助。格式位置 - java
我已经声明上述,我会将其解析为我的主类。
我需要实现一个for循环,帮助整齐此代码,并删除所有的“如果”和“否则,如果”声明,任何帮助将非常感谢一些帮助。
谢谢
你似乎有两种截然不同的情况:
noDecimal
是1到10之间noDecimal
为0因此,你的代码需要看起来像这样:
double decimalPlace = noDecimal;
DecimalFormat formatter = new DecimalFormat("##.##########");
if (noDecimal == 0) {
decimalPlace = 0.00000000000000000000000000000000000000000001;
}
else {
decimalPlace = 1;
StringBuilder formatString = new StringBuilder();
formatString.append("#0.");
for(int i = 0; i < noDecimal; i++) {
formatString.append("0");
decimalPlace /= 10;
}
formatter = new DecimalFormat(formatString.toString());
}
对于noDecimal
的值为2,此代码将产生一个decimalPlace
值0.01
(1 - > 0.1 - > 0.01)和格式化程序值#0.00
。
是,清除了这一点,这是答案后 - 我不够快,无法跟上你=),但是这是它是如何工作的^^ –
@MartinFrank:有问题的标题和内容真的不匹配。 – npinti
你想要**这个值吗?或者你想要**格式**吗? –
根据用户输入格式化它们。 1-10 – Mecroth