两个整数相除求%比,保留两位小数
2017-03-01 10:03
405 查看
double 是双精度类型,也就是说你的d是double,而你的d*100中的100是整形(int)。这是自动类型转换
符合以下条件时java将会做自动类型转换:
(1)转换前的数据类型与转换后的类型兼容。
(2)转换后的数据类型的表示范围比转换前的类型大。
其中double的表示范围比int大,符合条件(2)。因此java会自动将原来为int的类型的变量100转换为double类型。
private static double volicate(int a,int b) {
DecimalFormat df = new DecimalFormat("0.0000");
String fgl = df.format((double)a/b);
DecimalFormat sf_s = new DecimalFormat("00.00");
double dou = Double.valueOf(sf_s.format(Double.valueOf(fgl)*100));
return dou;
}
=====================================================================================
测试类:
package com.jiuqi;
import java.text.DecimalFormat;
public class Test2 {
public static void main(String[] args) {
// int a = 56,b=118;
// DecimalFormat df = new DecimalFormat("0.0000");
// String fgl = df.format((double)a/b);
// DecimalFormat sf_s = new DecimalFormat("00.00");
// System.out.println(Double.valueOf(sf_s.format(Double.valueOf(fgl)*100)));
for(int i = 1; i<100;i++){
for(int num = 0; num<100;num++){
System.out.println(volicate(num,i));
}
}
}
// private static void volicate(int a,int b) {
// DecimalFormat df = new DecimalFormat("0.0000");
// String fgl = df.format((double)a/b);
// DecimalFormat sf_s = new DecimalFormat("00.00");
// System.out.println(Double.valueOf(fgl)*100);
// System.out.println(Double.valueOf(sf_s.format(Double.valueOf(fgl)*100)));
// }
//
private static double volicate(int a,int b) {
DecimalFormat df = new DecimalFormat("0.0000");
String fgl = df.format((double)a/b);
DecimalFormat sf_s = new DecimalFormat("00.00");
double dou = Double.valueOf(sf_s.format(Double.valueOf(fgl)*100));
return dou;
}
}
符合以下条件时java将会做自动类型转换:
(1)转换前的数据类型与转换后的类型兼容。
(2)转换后的数据类型的表示范围比转换前的类型大。
其中double的表示范围比int大,符合条件(2)。因此java会自动将原来为int的类型的变量100转换为double类型。
private static double volicate(int a,int b) {
DecimalFormat df = new DecimalFormat("0.0000");
String fgl = df.format((double)a/b);
DecimalFormat sf_s = new DecimalFormat("00.00");
double dou = Double.valueOf(sf_s.format(Double.valueOf(fgl)*100));
return dou;
}
=====================================================================================
测试类:
package com.jiuqi;
import java.text.DecimalFormat;
public class Test2 {
public static void main(String[] args) {
// int a = 56,b=118;
// DecimalFormat df = new DecimalFormat("0.0000");
// String fgl = df.format((double)a/b);
// DecimalFormat sf_s = new DecimalFormat("00.00");
// System.out.println(Double.valueOf(sf_s.format(Double.valueOf(fgl)*100)));
for(int i = 1; i<100;i++){
for(int num = 0; num<100;num++){
System.out.println(volicate(num,i));
}
}
}
// private static void volicate(int a,int b) {
// DecimalFormat df = new DecimalFormat("0.0000");
// String fgl = df.format((double)a/b);
// DecimalFormat sf_s = new DecimalFormat("00.00");
// System.out.println(Double.valueOf(fgl)*100);
// System.out.println(Double.valueOf(sf_s.format(Double.valueOf(fgl)*100)));
// }
//
private static double volicate(int a,int b) {
DecimalFormat df = new DecimalFormat("0.0000");
String fgl = df.format((double)a/b);
DecimalFormat sf_s = new DecimalFormat("00.00");
double dou = Double.valueOf(sf_s.format(Double.valueOf(fgl)*100));
return dou;
}
}
相关文章推荐
- java中两个整数相除得到小数点并保留两位小数的方法
- Java 两个整数相除保留两位小数,将小数转化为百分数
- Java 两个整数相除保留两位小数,将小数转化为百分数
- Java 两个整数相除保留两位小数,将小数转化为百分数
- 【小知识点总结】java中两个整数相除得到小数点并保留两位小数的方法
- Java 两个整数相除保留两位小数,将小数转化为百分数
- java中两个整数相除得到小数点并保留两位小数的方法
- 79、Java 两个整数相除保留两位小数,将小数转化为百分数
- Java 两个整数相除保留两位小数,将小数转化为百分数
- Java进阶(五十二)两个整数相除得到小数点并保留两位小数的方法
- java 两个整数相除保留两位小数
- java中两个整数相除得到小数点并保留两位小数的方法
- Java两整数相除保留两位小数
- 两个整形相除保留两位小数
- java中两个整数相除商保留两位小数
- 两个int相除保留两位小数
- Java两整数相除保留两位小数
- java实现两个整数相除保留一位小数
- Java两整数相除保留两位小数
- java实现两个整数相除保留一位小数