帮我写一个能实现大数相加并将参数传至private的类
时间: 2023-05-26 10:01:56 浏览: 118
以下是一个示例代码,实现大数相加并将参数传至private的类:
```java
public class Adder {
private String num1;
private String num2;
public Adder(String num1, String num2) {
this.num1 = num1;
this.num2 = num2;
}
public String add() {
int len1 = num1.length();
int len2 = num2.length();
int carry = 0;
StringBuilder sb = new StringBuilder();
int i = len1 - 1, j = len2 - 1;
while (i >= 0 || j >= 0) {
int x = i >= 0 ? num1.charAt(i) - '0' : 0;
int y = j >= 0 ? num2.charAt(j) - '0' : 0;
int sum = x + y + carry;
sb.append(sum % 10);
carry = sum / 10;
i--;
j--;
}
if (carry != 0) {
sb.append(carry);
}
return sb.reverse().toString();
}
}
```
这个类有两个private成员变量`num1`和`num2`,在构造函数中传入并赋值。`add()`方法实现了大数相加,返回值为相加的结果。
示例用到了StringBuilder类,这是一个可变字符串类,可以用于在循环中拼接字符串。
```
String num1 = "123456789123456789123456789";
String num2 = "987654321987654321987654321";
Adder adder = new Adder(num1, num2);
String result = adder.add();
System.out.println(result); // 输出1111111111111111111111111110
```
阅读全文