# Kotlin 程序：通过将类传递给函数来相加两个复数

> 原文： [https://www.programiz.com/kotlin-programming/examples/add-complex-number](https://www.programiz.com/kotlin-programming/examples/add-complex-number)

#### 在此程序中，您将通过创建一个名为`Complex`的类并将其传递给函数`add()`来学习在 Kotlin 中相加两个复数。

## 示例：相加两个复数

```kt
class Complex(internal var real: Double, internal var imag: Double)

fun main(args: Array<String>) {
    val n1 = Complex(2.3, 4.5)
    val n2 = Complex(3.4, 5.0)
    val temp: Complex

    temp = add(n1, n2)

    System.out.printf("Sum = %.1f + %.1fi", temp.real, temp.imag)
}

fun add(n1: Complex, n2: Complex): Complex {
    val temp = Complex(0.0, 0.0)

    temp.real = n1.real + n2.real
    temp.imag = n1.imag + n2.imag

    return temp
}
```

运行该程序时，输出为：

```kt
Sum = 5.7 + 9.5i
```

在上面的程序中，我们创建了一个具有两个成员变量的类`Complex`：`real`和`imag`。 顾名思义，`real`存储复数的实数部分，`imag`存储虚数部分。

`Complex`类具有一个构造器，用于初始化`real`和`imag`的值。

我们还创建了一个新的静态函数`add()`，该函数将两个复数作为参数并将结果作为复数返回。

在`add()`方法内部，我们只添加复数`n1`和`n2`的实部和虚部，将其存储在新变量`temp`中，然后返回[ `temp`。

然后，在调用函数`main()`中，我们使用`printf()`函数进行打印。

以下是等效的 Java 代码：[用于相加两个复数的 Java 程序](/java-programming/examples/add-complex-number "Java program to add two complex numbers")