用java声明复数类Complex,成员变量包括实部和虚部,成员方法包括实现由字符串构造复数、复数加法、减法、字符串描述、比较相等、计算复数的模等操作
时间: 2023-11-12 16:04:58 浏览: 244
java 复数的类Complex
5星 · 资源好评率100%
以下是用Java声明复数类Complex,包括实部和虚部两个成员变量,以及由字符串构造复数、复数加法、减法、字符串描述、比较相等、计算复数的模等操作的成员方法:
```java
public class Complex {
private double realPart; // 实部
private double imagPart; // 虚部
// 构造函数
public Complex(double realPart, double imagPart) {
this.realPart = realPart;
this.imagPart = imagPart;
}
// 由字符串构造复数
public static Complex fromString(String str) {
String[] parts = str.split("\\+");
double realPart = Double.parseDouble(parts[0].trim());
double imagPart = Double.parseDouble(parts[1].trim().replace("i", ""));
return new Complex(realPart, imagPart);
}
// 复数加法
public Complex add(Complex other) {
return new Complex(this.realPart + other.realPart, this.imagPart + other.imagPart);
}
// 复数减法
public Complex subtract(Complex other) {
return new Complex(this.realPart - other.realPart, this.imagPart - other.imagPart);
}
// 字符串描述
public String toString() {
return String.format("%.2f + %.2fi", this.realPart, this.imagPart);
}
// 判断是否相等
public boolean equals(Complex other) {
return this.realPart == other.realPart && this.imagPart == other.imagPart;
}
// 计算复数的模
public double modulus() {
return Math.sqrt(Math.pow(this.realPart, 2) + Math.pow(this.imagPart, 2));
}
}
```
在这个类中,我们定义了一个构造函数 `Complex`,以及由字符串构造复数的静态方法 `fromString`。此外,我们还定义了复数加法 `add`、减法 `subtract`、字符串描述 `toString`、判断是否相等 `equals`、计算复数的模 `modulus` 等方法。其中,字符串描述方法使用了 `String.format` 方法来格式化输出,保留两位小数。
阅读全文