1、打开eclipse,创建一个Java工程,在此工程里新建一个类;
2、在新建的类中,添加4个运算类;
3、在主方法中调用对应的方法即可完成分数的加减乘除运算了。
具体实现代码如下:
public class Demo {
public static void main(String[] args) {
System.out.println(jia(1, 2))
System.out.println(jian(1, 2))
System.out.println(cheng(1, 2))
System.out.println(chu(1, 2))
}
//加法运算
private static float jia(float x,float y) {
return x + y
}
//减法运算
private static float jian(float x,float y) {
return x - y
}
//乘法运算
private static float cheng(float x,float y) {
return x * y
}
//除法运算
private static float chu(float x,float y) {
return x / y
}
}
二进制数据是用0和1两个数码来表示的数。Java中表示分数怎么用 不加double 就是0.0记得加double。
计算机中的二进制则是一个非常微小的开关,用“开”来表示1,“关”来表示0。
“Java是一门面向对象的编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。”
你可以写个分数类,下面是参考:public class Fraction {
private Integer numerator// 分子
private Integer denominator// 分母
/**
* 构造器
*/
public Fraction() {
}
public Fraction(Integer numerator, Integer denominator) {
this.numerator = numerator
this.denominator = denominator
}
public Integer getDenominator() {
return denominator
}
public void setDenominator(Integer denominator) {
this.denominator = denominator
}
public Integer getNumerator() {
return numerator
}
public void setNumerator(Integer numerator) {
this.numerator = numerator
}
/**
* 求最大公约数
*
* @return
*/
private int getGCD(int a, int b) {
int max = Math.max(a, b)
int min = Math.min(a, b)
int mod = max % min
if (mod == 0) {
return min
} else {
return this.getGCD(mod, min)
}
}
/**
* 简化和约分
*
* @return
*/
public Fraction simplify() {
// 格式化
if (this.numerator == 0) {
this.denominator = null
return this
} else if (this.denominator * this.numerator >0
&&this.denominator <0) {
this.denominator = Math.abs(this.denominator)
this.numerator = Math.abs(this.numerator)
return this
} else if (this.denominator <0) {
this.denominator = Math.abs(this.denominator)
this.numerator = -this.numerator
return this
}
// 约分
int gcd = this.getGCD(Math.abs(denominator), Math.abs(numerator))
if (gcd == 1) {
return this
} else {
this.denominator = this.denominator / gcd
this.numerator = this.numerator / gcd
return this
}
}
/**
* 加法
*
* @param fraction
* @return
*/
public Fraction add(Fraction fraction) {
Integer resultDenominator = Math.abs(this.denominator)
* Math.abs(fraction.getDenominator())
Integer resultNumerator = this.numerator * fraction.getDenominator()
+ this.denominator * fraction.getNumerator()
Fraction result = new Fraction(resultNumerator, resultDenominator)
return result.simplify()
}
/**
* 减法
*
* @param fraction
* @return
*/
public Fraction minus(Fraction fraction) {
Integer resultDenominator = Math.abs(this.denominator)
* Math.abs(fraction.getDenominator())
Integer resultNumerator = this.numerator * fraction.getDenominator()
- this.denominator * fraction.getNumerator()
Fraction result = new Fraction(resultNumerator, resultDenominator)
return result.simplify()
}
/**
* 乘法
*
* @param fraction
* @return
*/
public Fraction multiply(Fraction fraction) {
Fraction result = null
if (this.numerator == 0 || fraction.numerator == 0) {
result = new Fraction(0, null)
}
Integer resultDenominator = this.denominator
* fraction.getDenominator()
Integer resultNumerator = this.numerator * fraction.getNumerator()
result = new Fraction(resultNumerator, resultDenominator)
return result.simplify()
}
/**
*除法
*
* @param fraction
* @return
*/
public Fraction divide(Fraction fraction) {
Fraction result = null
if (this.numerator == 0) {
result = new Fraction(0, null)
}
Integer resultDenominator = this.denominator * fraction.getNumerator()
Integer resultNumerator = this.numerator * fraction.getDenominator()
result = new Fraction(resultNumerator, resultDenominator)
return result.simplify()
}
@Override
public String toString() {
return "[分子]" + this.numerator + "-[分母]" + this.denominator
}
/**
* 测试
*
* @param args
*/
public static void main(String[] args) {
Fraction f1 = new Fraction(1, 2)
Fraction f2 = new Fraction(2, 4)
System.out.println(f1)
System.out.println(f2)
System.out.println(f2.simplify())
System.out.println(f1.add(f2))
System.out.println(f1.minus(f2))
System.out.println(f1.multiply(f2))
System.out.println(f1.divide(f2))
}
}