不同编程语言实现 (5).add(3).minus(2)
功能的思路在本质上是相似的,但具体实现方式会有所不同。
一、Python
可以使用自定义类来实现。
class NumberWrapper:
def __init__(self, value):
self.value = value
def add(self, num):
self.value += num
return self
def minus(self, num):
self.value -= num
return self
result = NumberWrapper(5).add(3).minus(2)
print(result.value)
二、Java
class NumberWrapper {
private int value;
public NumberWrapper(int value) {
this.value = value;
}
public NumberWrapper add(int num) {
this.value += num;
return this;
}
public NumberWrapper minus(int num) {
this.value -= num;
return this;
}
public int getValue() {
return value;
}
}
public class Main {
public static void main(String[] args) {
NumberWrapper result = new NumberWrapper(5).add(3).minus(2);
System.out.println(result.getValue());
}
}
三、C++
#include <iostream>
class NumberWrapper {
public:
int value;
NumberWrapper(int value) : value(value) {
}
NumberWrapper add(int num) {
value += num;
return *this;
}
NumberWrapper minus(int num) {
value -= num;
return *this;
}
};
int main() {
NumberWrapper result(5);
result = result.add(3).minus(2);
std::cout << result.value << std::endl;
return 0;
}
总体来说,不同编程语言的实现思路主要区别在于语法细节上,如类的定义方式、方法的语法、返回值的处理等。但核心都是通过定义一个类来包装数字,并提供相应的方法来实现链式操作。