แก้ไข

แชร์ผ่าน


Complex.ToString Method

Definition

Converts the value of a complex number to its equivalent string representation.

Overloads

ToString(String, IFormatProvider)

Converts the value of the current complex number to its equivalent string representation in Cartesian form by using the specified format and culture-specific format information for its real and imaginary parts.

ToString(String)

Converts the value of the current complex number to its equivalent string representation in Cartesian form by using the specified format for its real and imaginary parts.

ToString(IFormatProvider)

Converts the value of the current complex number to its equivalent string representation in Cartesian form by using the specified culture-specific formatting information.

ToString()

Converts the value of the current complex number to its equivalent string representation in Cartesian form.

ToString(String, IFormatProvider)

Source:
Complex.cs
Source:
Complex.cs
Source:
Complex.cs

Converts the value of the current complex number to its equivalent string representation in Cartesian form by using the specified format and culture-specific format information for its real and imaginary parts.

public:
 virtual System::String ^ ToString(System::String ^ format, IFormatProvider ^ provider);
public string ToString (string format, IFormatProvider provider);
public string ToString (string? format, IFormatProvider? provider);
override this.ToString : string * IFormatProvider -> string
Public Function ToString (format As String, provider As IFormatProvider) As String

Parameters

format
String

A standard or custom numeric format string.

provider
IFormatProvider

An object that supplies culture-specific formatting information.

Returns

The string representation of the current instance in Cartesian form, as specified by format and provider.

Implements

Exceptions

format is not a valid format string.

Examples

The following example creates an array of complex numbers, and displays each using several standard format strings as well as CultureInfo objects that represent the English - United States ("en-US") and French - France ("fr-FR") cultures.

using System;
using System.Globalization;
using System.Numerics;

public class Example
{
   public static void Main()
   {
      Complex[] c = { new Complex(17.3, 14.1),
                      new Complex(-18.9, 147.2),
                      new Complex(13.472, -18.115),
                      new Complex(-11.154, -17.002) };
      CultureInfo[] cultures = { new CultureInfo("en-US"),
                                 new CultureInfo("fr-FR") };
      string[] formats = { "F2", "N2", "G5" };

      foreach (Complex c1 in c)
      {
         foreach (string format in formats)
         {
            Console.Write("{0} format string:   ", format);
            foreach (CultureInfo culture in cultures)
               Console.Write("{0} ({1})    ", c1.ToString(format, culture), culture.Name);

            Console.WriteLine();
         }
         Console.WriteLine();
      }
   }
}
// The example displays the following output:
//    F2 format string:   (17.30, 14.10) (en-US)    (17,30, 14,10) (fr-FR)
//    N2 format string:   (17.30, 14.10) (en-US)    (17,30, 14,10) (fr-FR)
//    G5 format string:   (17.3, 14.1) (en-US)    (17,3, 14,1) (fr-FR)
//
//    F2 format string:   (-18.90, 147.20) (en-US)    (-18,90, 147,20) (fr-FR)
//    N2 format string:   (-18.90, 147.20) (en-US)    (-18,90, 147,20) (fr-FR)
//    G5 format string:   (-18.9, 147.2) (en-US)    (-18,9, 147,2) (fr-FR)
//
//    F2 format string:   (13.47, -18.12) (en-US)    (13,47, -18,12) (fr-FR)
//    N2 format string:   (13.47, -18.12) (en-US)    (13,47, -18,12) (fr-FR)
//    G5 format string:   (13.472, -18.115) (en-US)    (13,472, -18,115) (fr-FR)
//
//    F2 format string:   (-11.15, -17.00) (en-US)    (-11,15, -17,00) (fr-FR)
//    N2 format string:   (-11.15, -17.00) (en-US)    (-11,15, -17,00) (fr-FR)
//    G5 format string:   (-11.154, -17.002) (en-US)    (-11,154, -17,002) (fr-FR)
open System.Globalization
open System.Numerics

let c =
    [ Complex(17.3, 14.1)
      Complex(-18.9, 147.2)
      Complex(13.472, -18.115)
      Complex(-11.154, -17.002) ]

let cultures = [ CultureInfo "en-US"; CultureInfo "fr-FR" ]
let formats = [ "F2"; "N2"; "G5" ]

for c1 in c do
    for format in formats do
        for culture in cultures do
            printf $"{format} format string: {c1.ToString(format, culture)} ({culture.Name})    "

        printfn ""

    printfn ""
// The example displays the following output:
//    F2 format string:   (17.30, 14.10) (en-US)    (17,30, 14,10) (fr-FR)
//    N2 format string:   (17.30, 14.10) (en-US)    (17,30, 14,10) (fr-FR)
//    G5 format string:   (17.3, 14.1) (en-US)    (17,3, 14,1) (fr-FR)
//
//    F2 format string:   (-18.90, 147.20) (en-US)    (-18,90, 147,20) (fr-FR)
//    N2 format string:   (-18.90, 147.20) (en-US)    (-18,90, 147,20) (fr-FR)
//    G5 format string:   (-18.9, 147.2) (en-US)    (-18,9, 147,2) (fr-FR)
//
//    F2 format string:   (13.47, -18.12) (en-US)    (13,47, -18,12) (fr-FR)
//    N2 format string:   (13.47, -18.12) (en-US)    (13,47, -18,12) (fr-FR)
//    G5 format string:   (13.472, -18.115) (en-US)    (13,472, -18,115) (fr-FR)
//
//    F2 format string:   (-11.15, -17.00) (en-US)    (-11,15, -17,00) (fr-FR)
//    N2 format string:   (-11.15, -17.00) (en-US)    (-11,15, -17,00) (fr-FR)
//    G5 format string:   (-11.154, -17.002) (en-US)    (-11,154, -17,002) (fr-FR)
Imports System.Globalization
Imports System.Numerics

Module Example
   Public Sub Main()
      Dim c() As Complex = { New Complex(17.3, 14.1), 
                             New Complex(-18.9, 147.2), 
                             New Complex(13.472, -18.115), 
                             New Complex(-11.154, -17.002) }
      Dim cultures() As CultureInfo = { New CultureInfo("en-US"), 
                                        New CultureInfo("fr-FR") } 
      Dim formats() As String = { "F2", "N2", "G5" } 

      For Each c1 As Complex In c
         For Each format As String In formats
            Console.Write("{0} format string:   ", format)
            For Each culture As CultureInfo In cultures
               Console.Write("{0} ({1})    ", c1.ToString(format, culture), 
                                              culture.Name)
            Next
            Console.WriteLine()
         Next
         Console.WriteLine()
      Next                          
   End Sub
End Module
' The example displays the following output:
'    F2 format string:   (17.30, 14.10) (en-US)    (17,30, 14,10) (fr-FR)
'    N2 format string:   (17.30, 14.10) (en-US)    (17,30, 14,10) (fr-FR)
'    G5 format string:   (17.3, 14.1) (en-US)    (17,3, 14,1) (fr-FR)
'    
'    F2 format string:   (-18.90, 147.20) (en-US)    (-18,90, 147,20) (fr-FR)
'    N2 format string:   (-18.90, 147.20) (en-US)    (-18,90, 147,20) (fr-FR)
'    G5 format string:   (-18.9, 147.2) (en-US)    (-18,9, 147,2) (fr-FR)
'    
'    F2 format string:   (13.47, -18.12) (en-US)    (13,47, -18,12) (fr-FR)
'    N2 format string:   (13.47, -18.12) (en-US)    (13,47, -18,12) (fr-FR)
'    G5 format string:   (13.472, -18.115) (en-US)    (13,472, -18,115) (fr-FR)
'    
'    F2 format string:   (-11.15, -17.00) (en-US)    (-11,15, -17,00) (fr-FR)
'    N2 format string:   (-11.15, -17.00) (en-US)    (-11,15, -17,00) (fr-FR)
'    G5 format string:   (-11.154, -17.002) (en-US)    (-11,154, -17,002) (fr-FR)

Remarks

The string representation of the complex number returned by this method displays the number using its Cartesian coordinates in the form <a; b> (or (a, b) in .NET 7 and earlier versions), where a is the real part of the complex number, and b is its imaginary part. Both a and b are formatted using the format string specified by format. The format parameter can be any valid standard numeric format specifier, or any combination of custom numeric format specifiers. If format is equal to String.Empty or is null, the real and imaginary parts of the complex number are formatted with the general format specifier ("G"). If format is any other value, the method throws a FormatException.

.NET provides extensive formatting support, which is described in greater detail in the following articles:

The provider parameter is an IFormatProvider implementation. Its GetFormat method returns a NumberFormatInfo object that provides culture-specific information about the format of the real and imaginary numbers in the returned string. Depending on the format parameter, this object controls symbols such as the negative sign, the group separator, and the decimal point symbol in the output string. If provider is null, the returned string is formatted using the NumberFormatInfo object of the current culture.

The provider parameter can be one of the following:

See also

Applies to

ToString(String)

Source:
Complex.cs
Source:
Complex.cs
Source:
Complex.cs

Converts the value of the current complex number to its equivalent string representation in Cartesian form by using the specified format for its real and imaginary parts.

public:
 System::String ^ ToString(System::String ^ format);
public string ToString (string format);
public string ToString (string? format);
override this.ToString : string -> string
Public Function ToString (format As String) As String

Parameters

format
String

A standard or custom numeric format string.

Returns

The string representation of the current instance in Cartesian form.

Exceptions

format is not a valid format string.

Examples

The following example initializes a complex number and displays it using several standard format strings.

using System;
using System.Numerics;

public class Example
{
   public static void Main()
   {
      Complex[] c = { new Complex(17.3, 14.1),
                      new Complex(-18.9, 147.2),
                      new Complex(13.472, -18.115),
                      new Complex(-11.154, -17.002) };
      string[] formats = { "F2", "N2", "G5" };

      foreach (Complex c1 in c)
      {
         foreach (string format in formats)
            Console.WriteLine("{0}: {1}    ", format, c1.ToString(format));

         Console.WriteLine();
      }
   }
}
// The example displays the following output:
//       F2: (17.30, 14.10)
//       N2: (17.30, 14.10)
//       G5: (17.3, 14.1)
//
//       F2: (-18.90, 147.20)
//       N2: (-18.90, 147.20)
//       G5: (-18.9, 147.2)
//
//       F2: (13.47, -18.12)
//       N2: (13.47, -18.12)
//       G5: (13.472, -18.115)
//
//       F2: (-11.15, -17.00)
//       N2: (-11.15, -17.00)
//       G5: (-11.154, -17.002)
open System.Numerics

let c =
    [ Complex(17.3, 14.1)
      Complex(-18.9, 147.2)
      Complex(13.472, -18.115)
      Complex(-11.154, -17.002) ]

let formats = [ "F2"; "N2"; "G5" ]

for c1 in c do
    for format in formats do
        printf $"{format}: {c1.ToString(format)}    "

    printfn ""
// The example displays the following output:
//       F2: (17.30, 14.10)
//       N2: (17.30, 14.10)
//       G5: (17.3, 14.1)
//
//       F2: (-18.90, 147.20)
//       N2: (-18.90, 147.20)
//       G5: (-18.9, 147.2)
//
//       F2: (13.47, -18.12)
//       N2: (13.47, -18.12)
//       G5: (13.472, -18.115)
//
//       F2: (-11.15, -17.00)
//       N2: (-11.15, -17.00)
//       G5: (-11.154, -17.002)
Imports System.Numerics

Module Example
   Public Sub Main()
      Dim c() As Complex = { New Complex(17.3, 14.1), 
                             New Complex(-18.9, 147.2), 
                             New Complex(13.472, -18.115), 
                             New Complex(-11.154, -17.002) }
      Dim formats() As String = { "F2", "N2", "G5" } 
      
      For Each c1 As Complex In c
         For Each format As String In formats
            Console.WriteLine("{0}: {1}    ", format, c1.ToString(format))
         Next
         Console.WriteLine()
      Next                          
   End Sub
End Module
' The example displays the following output:
'       F2: (17.30, 14.10)
'       N2: (17.30, 14.10)
'       G5: (17.3, 14.1)
'       
'       F2: (-18.90, 147.20)
'       N2: (-18.90, 147.20)
'       G5: (-18.9, 147.2)
'       
'       F2: (13.47, -18.12)
'       N2: (13.47, -18.12)
'       G5: (13.472, -18.115)
'       
'       F2: (-11.15, -17.00)
'       N2: (-11.15, -17.00)
'       G5: (-11.154, -17.002)

Remarks

The string representation of the complex number returned by this method displays the number using its Cartesian coordinates in the form <a; b> (or (a, b) in .NET 7 and earlier versions), where a is the real part of the complex number, and b is its imaginary part. Both a and b are formatted using the format string specified by format. The format parameter can be any valid standard numeric format specifier, or any combination of custom numeric format specifiers. If format is equal to String.Empty or is null, the real and imaginary parts of the complex number are formatted with the general format specifier ("G"). If format is any other value, the method throws a FormatException.

.NET provides extensive formatting support, which is described in greater detail in the following articles:

The format of the returned string is determined by the NumberFormatInfo object for the current culture. Depending on the format parameter, this object controls symbols such as the negative sign, the group separator, and the decimal point symbol in the output string. To provide formatting information for cultures other than the current culture, call the ToString(String, IFormatProvider) overload.

See also

Applies to

ToString(IFormatProvider)

Source:
Complex.cs
Source:
Complex.cs
Source:
Complex.cs

Converts the value of the current complex number to its equivalent string representation in Cartesian form by using the specified culture-specific formatting information.

public:
 System::String ^ ToString(IFormatProvider ^ provider);
public string ToString (IFormatProvider provider);
public string ToString (IFormatProvider? provider);
override this.ToString : IFormatProvider -> string
Public Function ToString (provider As IFormatProvider) As String

Parameters

provider
IFormatProvider

An object that supplies culture-specific formatting information.

Returns

The string representation of the current instance in Cartesian form, as specified by provider.

Examples

The following example displays the string representation of several complex numbers. The result uses the formatting conventions of the English - United States ("en-US") and French - France ("fr-FR") cultures.

using System;
using System.Globalization;
using System.Numerics;

public class Example
{
   public static void Main()
   {
      Complex[] c = { new Complex(17.3, 14.1),
                      new Complex(-18.9, 147.2),
                      new Complex(13.472, -18.115),
                      new Complex(-11.154, -17.002) };
      CultureInfo[] cultures = { new CultureInfo("en-US"),
                                 new CultureInfo("fr-FR") };
      foreach (Complex c1 in c)
      {
         foreach (CultureInfo culture in cultures)
            Console.Write("{0} ({1})    ", c1.ToString(culture), culture.Name);

         Console.WriteLine();
      }
   }
}
// The example displays the following output:
//       (17.3, 14.1) (en-US)    (17,3, 14,1) (fr-FR)
//       (-18.9, 147.2) (en-US)    (-18,9, 147,2) (fr-FR)
//       (13.472, -18.115) (en-US)    (13,472, -18,115) (fr-FR)
//       (-11.154, -17.002) (en-US)    (-11,154, -17,002) (fr-FR)
open System.Globalization
open System.Numerics

let c =
    [ Complex(17.3, 14.1)
      Complex(-18.9, 147.2)
      Complex(13.472, -18.115)
      Complex(-11.154, -17.002) ]

let cultures = [ CultureInfo "en-US"; CultureInfo "fr-FR" ]

for c1 in c do
    for culture in cultures do
        printf $"{c1.ToString culture} ({culture.Name})"

    printfn ""
// The example displays the following output:
//       (17.3, 14.1) (en-US)    (17,3, 14,1) (fr-FR)
//       (-18.9, 147.2) (en-US)    (-18,9, 147,2) (fr-FR)
//       (13.472, -18.115) (en-US)    (13,472, -18,115) (fr-FR)
//       (-11.154, -17.002) (en-US)    (-11,154, -17,002) (fr-FR)
Imports System.Globalization
Imports System.Numerics

Module Example
   Public Sub Main()
      Dim c() As Complex = { New Complex(17.3, 14.1), 
                             New Complex(-18.9, 147.2), 
                             New Complex(13.472, -18.115), 
                             New Complex(-11.154, -17.002) }
      Dim cultures() As CultureInfo = { New CultureInfo("en-US"), 
                                        New CultureInfo("fr-FR") } 
      For Each c1 As Complex In c
         For Each culture As CultureInfo In cultures
            Console.Write("{0} ({1})    ", c1.ToString(culture), culture.Name)
         Next
         Console.WriteLine()
      Next                          
   End Sub
End Module
' The example displays the following output:
'       (17.3, 14.1) (en-US)    (17,3, 14,1) (fr-FR)
'       (-18.9, 147.2) (en-US)    (-18,9, 147,2) (fr-FR)
'       (13.472, -18.115) (en-US)    (13,472, -18,115) (fr-FR)
'       (-11.154, -17.002) (en-US)    (-11,154, -17,002) (fr-FR)

Remarks

The string representation of the complex number returned by this method displays the number using its Cartesian coordinates in the form <a; b> (or (a, b) in .NET 7 and earlier versions), where a is the real part of the complex number, and b is its imaginary part. Both a and b are formatted using the general format specifier ("G") and the conventions of the culture defined by provider.

The provider parameter is an IFormatProvider implementation. Its GetFormat method returns a NumberFormatInfo object that provides culture-specific information about the format of the real and imaginary numbers in the returned string. If provider is null, the returned string is formatted using the NumberFormatInfo object of the current culture.

The provider parameter can be one of the following:

Applies to

ToString()

Source:
Complex.cs
Source:
Complex.cs
Source:
Complex.cs

Converts the value of the current complex number to its equivalent string representation in Cartesian form.

public:
 override System::String ^ ToString();
public override string ToString ();
override this.ToString : unit -> string
Public Overrides Function ToString () As String

Returns

The string representation of the current instance in Cartesian form.

Examples

The following example displays the string representation of several complex numbers. The output uses the formatting conventions of the English - United States ("en-US") culture, which, in this case, is the current system culture.

using System;
using System.Numerics;

public class Example
{
   public static void Main()
   {
      Complex[] c = { new Complex(17.3, 14.1),
                      new Complex(-18.9, 147.2),
                      new Complex(13.472, -18.115),
                      new Complex(-11.154, -17.002) };
      foreach (Complex c1 in c)
         Console.WriteLine(c1.ToString());
   }
}
// The example display the following output:
//       (17.3, 14.1)
//       (-18.9, 147.2)
//       (13.472, -18.115)
//       (-11.154, -17.002)
open System.Numerics

let c =
    [ Complex(17.3, 14.1)
      Complex(-18.9, 147.2)
      Complex(13.472, -18.115)
      Complex(-11.154, -17.002) ]

for c1 in c do
    printfn $"{c1.ToString()}"
// The example display the following output:
//       (17.3, 14.1)
//       (-18.9, 147.2)
//       (13.472, -18.115)
//       (-11.154, -17.002)
Imports System.Numerics

Module Example
   Public Sub Main()
      Dim c() As Complex = { New Complex(17.3, 14.1), 
                             New Complex(-18.9, 147.2), 
                             New Complex(13.472, -18.115), 
                             New Complex(-11.154, -17.002) }
      For Each c1 As Complex In c
         Console.WriteLine(c1.ToString())
      Next                          
   End Sub
End Module
' The example displays the following output:
'       (17.3, 14.1)
'       (-18.9, 147.2)
'       (13.472, -18.115)
'       (-11.154, -17.002)

Remarks

The default string representation of a complex number displays the number using its Cartesian coordinates in the form <a; b> (or (a, b) in .NET 7 and earlier versions), where a is the real part of the complex number, and b is its imaginary part. Both a and b are formatted using the general format specifier ("G") and the conventions of the current system culture.

Applies to