Поделиться через


Decimal.Negate Method

Microsoft Silverlight will reach end of support after October 2021. Learn more.

Returns the result of multiplying the specified Decimal value by negative one.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

Syntax

'Declaration
Public Shared Function Negate ( _
    d As Decimal _
) As Decimal
public static decimal Negate(
    decimal d
)

Parameters

Return Value

Type: System.Decimal
A Decimal with the value of d, but the opposite sign.
-or-
Zero, if d is zero.

Examples

The following code example uses the Negate method to change the sign of several Decimal values.

' Example of the Decimal.Negate, Decimal.Floor, and Decimal.Truncate 
' methods. 

Module Example

   Const dataFmt As String = "{0,-30}{1,26}"

   ' Display Decimal parameters and their product, quotient, and 
   ' remainder.
   Sub ShowDecimalFloorNegTrunc(ByVal outputBlock As System.Windows.Controls.TextBlock, ByVal Argument As Decimal)

      outputBlock.Text &= vbCrLf
      outputBlock.Text &= String.Format(dataFmt, "Decimal Argument", Argument) & vbCrLf
      outputBlock.Text &= String.Format(STring.Format(dataFmt, _
          "Decimal.Negate( Argument )", _
          Decimal.Negate(Argument))) & vbCrLf
      outputBlock.Text &= String.Format(dataFmt, _
          "Decimal.Floor( Argument )", _
          Decimal.Floor(Argument)) & vbCrLf
      outputBlock.Text &= String.Format(dataFmt, _
          "Decimal.Truncate( Argument )", _
          Decimal.Truncate(Argument)) & vbCrLf
   End Sub

   Public Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)
      outputBlock.Text &= "This example of the " & vbCrLf & _
          "  Decimal.Negate( Decimal ), " & vbCrLf & _
          "  Decimal.Floor( Decimal ), and " & vbCrLf & _
          "  Decimal.Truncate( Decimal ) " & vbCrLf & _
          "methods generates the following output." & vbCrLf

      ' Create pairs of Decimal objects.
      ShowDecimalFloorNegTrunc(outputBlock, 0D)
      ShowDecimalFloorNegTrunc(outputBlock, 123.456D)
      ShowDecimalFloorNegTrunc(outputBlock, -123.456D)
      ShowDecimalFloorNegTrunc(outputBlock,  _
          New Decimal(1230000000, 0, 0, True, 7))
      ShowDecimalFloorNegTrunc(outputBlock, -9999999999.9999999999D)
   End Sub
End Module

' This example of the
'   Decimal.Negate( Decimal ),
'   Decimal.Floor( Decimal ), and
'   Decimal.Truncate( Decimal )
' methods generates the following output.
' 
' Decimal Argument                                       0
' Decimal.Negate( Argument )                             0
' Decimal.Floor( Argument )                              0
' Decimal.Truncate( Argument )                           0
' 
' Decimal Argument                                 123.456
' Decimal.Negate( Argument )                      -123.456
' Decimal.Floor( Argument )                            123
' Decimal.Truncate( Argument )                         123
' 
' Decimal Argument                                -123.456
' Decimal.Negate( Argument )                       123.456
' Decimal.Floor( Argument )                           -124
' Decimal.Truncate( Argument )                        -123
' 
' Decimal Argument                            -123.0000000
' Decimal.Negate( Argument )                   123.0000000
' Decimal.Floor( Argument )                           -123
' Decimal.Truncate( Argument )                        -123
' 
' Decimal Argument                  -9999999999.9999999999
' Decimal.Negate( Argument )         9999999999.9999999999
' Decimal.Floor( Argument )                   -10000000000
' Decimal.Truncate( Argument )                 -9999999999
// Example of the decimal.Negate, decimal.Floor, and decimal.Truncate 
// methods. 
using System;

class Example
{
   const string dataFmt = "{0,-30}{1,26}";

   // Display decimal parameters and the method results.
   public static void ShowDecimalFloorNegTrunc(System.Windows.Controls.TextBlock outputBlock, decimal Argument)
   {
      outputBlock.Text += "\n";
      outputBlock.Text += String.Format(dataFmt, "decimal Argument", Argument) + "\n";
      outputBlock.Text += String.Format(dataFmt, "decimal.Negate( Argument )",
          decimal.Negate(Argument)) + "\n";
      outputBlock.Text += String.Format(dataFmt, "decimal.Floor( Argument )",
          decimal.Floor(Argument)) + "\n";
      outputBlock.Text += String.Format(dataFmt, "decimal.Truncate( Argument )",
          decimal.Truncate(Argument)) + "\n";
   }

   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
   {
      outputBlock.Text += "This example of the \n" +
          "  decimal.Negate( decimal ), \n" +
          "  decimal.Floor( decimal ), and \n" +
          "  decimal.Truncate( decimal ) \n" +
          "methods generates the following output." + "\n";

      // Create pairs of decimal objects.
      ShowDecimalFloorNegTrunc(outputBlock, 0M);
      ShowDecimalFloorNegTrunc(outputBlock, 123.456M);
      ShowDecimalFloorNegTrunc(outputBlock, -123.456M);
      ShowDecimalFloorNegTrunc(outputBlock, 
          new decimal(1230000000, 0, 0, true, 7));
      ShowDecimalFloorNegTrunc(outputBlock, -9999999999.9999999999M);
   }
}

/*
This example of the
  decimal.Negate( decimal ),
  decimal.Floor( decimal ), and
  decimal.Truncate( decimal )
methods generates the following output.

decimal Argument                                       0
decimal.Negate( Argument )                             0
decimal.Floor( Argument )                              0
decimal.Truncate( Argument )                           0

decimal Argument                                 123.456
decimal.Negate( Argument )                      -123.456
decimal.Floor( Argument )                            123
decimal.Truncate( Argument )                         123

decimal Argument                                -123.456
decimal.Negate( Argument )                       123.456
decimal.Floor( Argument )                           -124
decimal.Truncate( Argument )                        -123

decimal Argument                            -123.0000000
decimal.Negate( Argument )                   123.0000000
decimal.Floor( Argument )                           -123
decimal.Truncate( Argument )                        -123

decimal Argument                  -9999999999.9999999999
decimal.Negate( Argument )         9999999999.9999999999
decimal.Floor( Argument )                   -10000000000
decimal.Truncate( Argument )                 -9999999999
*/

Version Information

Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0

Platforms

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.

See Also

Reference