Complex.ToString 形式の <a; b> への変更

カルチャ固有の情報を含む値の書式設定をより適切にサポートするために、複素数の既定の文字列形式を変更し、書式設定された数値で使用できる文字を使用しないようにしました。 この変更は Complex.ToString に影響します。値は (a, b) ではなく <a; b> として書式設定されるようになりました。 ab はどちらも、一般的な書式指定子 ("G") とプロバイダーによって定義されたカルチャの規則を使用して書式設定されます。こちらには変更がありません。

以前の動作

以前は、Complex.ToString によって返された複素数の文字列表現では、(a, b) 形式のデカルト座標を使用して数値が表示されていました (a が複素数の実数部分であり、b がその虚数部分でした)。

新しい動作

.NET 8 以降では、Complex.ToString によって返される複素数の文字列表現は、<a; b>形式のデカルト座標を使用して数値を表示します (a が複素数の実数部分であり、b がその虚数部分です)。

導入されたバージョン

.NET 8

破壊的変更の種類

この変更は、動作変更です。

変更理由

変更によりセミコロンを使用するようになったため、カルチャ固有の情報を使用した書式設定がサポートされます。 また、INumberBase<TSelf> の実装により、対応するニーズが結果を解析できるようになります。

かっこ (( )) から山かっこへの変更により、負の数値が (x) として書式設定されている数値形式との競合を回避できます。 新しい動作は、Vector* 型の動作とも整合します。

前の形式が必要な場合は、$"({complex.Real}, {complex.Imaginary})" などのカスタム文字列書式設定メカニズムを使用すると、その形式の文字列を生成できます。

影響を受ける API