我有一个字符串,其值将就像'1/3'或'1/2'。它甚至可以是" 2/3"。我需要将其转换为最高2个小数位的等效百分比值,然后再次将其转换为字符串。
是否已经存在任何自动的Java API?
如果您知道对此的任何最佳解决方案,请告诉我。
代码下方可能解决此问题:
import java.util.StringTokenizer;
public class percentage {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String x="2/3";
System.out.println(convert(x));
}
public static String convert(String x){
int num=0;
StringTokenizer s= new StringTokenizer(x, "/");
while(s.hasMoreElements()){
num =Integer.parseInt(s.nextToken())/Integer.parseInt(s.nextToken());
}
return num+"";
}
}
我已经写了一种我自己的方法来解决这个问题。convert()
方法将返回一个字符串,该字符串给出理想的输出。
将双重转换为可以使用的百分比字符串:
double number = ...;
NumberFormat numberFormat = NumberFormat.getPercentInstance();
numberFormat.setMaximumFractionDigits(2);
String formattedString = numberFormat.format(number);
您可以创建自己的方法,简单地将字符串通过"/"拆分字符串,然后将(数组(分子和分母的字符串解析为double。