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


Math.Abs Метод

Определение

Возвращает абсолютное значение заданного числа.

Перегрузки

Abs(Decimal)

Возвращает абсолютное значение числа Decimal.

Abs(Double)

Возвращает абсолютное значение числа двойной точности с плавающей запятой.

Abs(Int16)

Возвращает абсолютное значение 16-битового целого числа со знаком.

Abs(Int32)

Возвращает абсолютное значение 32-битового целого числа со знаком.

Abs(Int64)

Возвращает абсолютное значение 64-битового целого числа со знаком.

Abs(IntPtr)

Возвращает абсолютное значение собственного целого числа со знаком.

Abs(SByte)

Возвращает абсолютное значение 8-битового целого числа со знаком.

Abs(Single)

Возвращает абсолютное значение числа одинарной точности с плавающей запятой.

Abs(Decimal)

Исходный код:
Math.cs
Исходный код:
Math.cs
Исходный код:
Math.cs

Возвращает абсолютное значение числа Decimal.

public:
 static System::Decimal Abs(System::Decimal value);
public static decimal Abs (decimal value);
static member Abs : decimal -> decimal
Public Shared Function Abs (value As Decimal) As Decimal

Параметры

value
Decimal

Число, которое больше или равно Decimal.MinValue, но меньше или равно Decimal.MaxValue.

Возвращаемое значение

Десятичное число x, такое, что 0 ≤ x ≤ Decimal.MaxValue.

Примеры

В следующем примере метод используется Abs(Decimal) для получения абсолютного значения ряда значений Decimal .

decimal[] decimals = { Decimal.MaxValue, 12.45M, 0M, -19.69M,
                       Decimal.MinValue };
foreach (decimal value in decimals)
   Console.WriteLine($"Abs({value}) = {Math.Abs(value)}");

// The example displays the following output:
//       Abs(79228162514264337593543950335) = 79228162514264337593543950335
//       Abs(12.45) = 12.45
//       Abs(0) = 0
//       Abs(-19.69) = 19.69
//       Abs(-79228162514264337593543950335) = 79228162514264337593543950335
open System

let decimals = 
    [ Decimal.MaxValue; 12.45M; 0M
      -19.69M; Decimal.MinValue ]

for value in decimals do
    // The 'abs' function may be used instead.
    printfn $"Abs({value}) = {Math.Abs value}"

// The example displays the following output:
//       Abs(79228162514264337593543950335) = 79228162514264337593543950335
//       Abs(12.45) = 12.45
//       Abs(0) = 0
//       Abs(-19.69) = 19.69
//       Abs(-79228162514264337593543950335) = 79228162514264337593543950335

Комментарии

Абсолютное значение Decimal — это его числовое значение без знака. Например, абсолютное значение 1,2 и -1,2 равно 1,2.

Применяется к

Abs(Double)

Исходный код:
Math.cs
Исходный код:
Math.cs
Исходный код:
Math.cs

Возвращает абсолютное значение числа двойной точности с плавающей запятой.

public:
 static double Abs(double value);
public static double Abs (double value);
static member Abs : double -> double
Public Shared Function Abs (value As Double) As Double

Параметры

value
Double

Число, которое больше или равно Double.MinValue, но меньше или равно Double.MaxValue.

Возвращаемое значение

Число с плавающей запятой двойной точности x, такое, что 0 ≤ x x ≤ Double.MaxValue.

Примеры

В следующем примере метод используется Abs(Double) для получения абсолютного значения ряда значений Double .

double[] doubles = { Double.MaxValue, 16.354e-17, 15.098123, 0,
                     -19.069713, -15.058e18, Double.MinValue };
foreach (double value in doubles)
   Console.WriteLine($"Abs({value}) = {Math.Abs(value)}");

// The example displays the following output:
//       Abs(1.79769313486232E+308) = 1.79769313486232E+308
//       Abs(1.6354E-16) = 1.6354E-16
//       Abs(15.098123) = 15.098123
//       Abs(0) = 0
//       Abs(-19.069713) = 19.069713
//       Abs(-1.5058E+19) = 1.5058E+19
//       Abs(-1.79769313486232E+308) = 1.79769313486232E+308
open System

let doubles = 
    [ Double.MaxValue; 16.354e-17; 15.098123; 0
      -19.069713; -15.058e18; Double.MinValue ]

for value in doubles do
    // The 'abs' function may be used instead.
    printfn $"Abs({value}) = {Math.Abs value}"

// The example displays the following output:
//       Abs(1.79769313486232E+308) = 1.79769313486232E+308
//       Abs(1.6354E-16) = 1.6354E-16
//       Abs(15.098123) = 15.098123
//       Abs(0) = 0
//       Abs(-19.069713) = 19.069713
//       Abs(-1.5058E+19) = 1.5058E+19
//       Abs(-1.79769313486232E+308) = 1.79769313486232E+308
Module Example
   Public Sub Main()
      Dim doubles() As Double = { Double.MaxValue, 16.354e-17, 15.098123, 0, _
                                  -19.069713, -15.058e18, Double.MinValue }
      For Each value As Double In doubles
         Console.WriteLine("Abs({0}) = {1}", value, Math.Abs(value))
      Next
   End Sub
End Module
' The example displays the following output:
'       Abs(1.79769313486232E+308) = 1.79769313486232E+308
'       Abs(1.6354E-16) = 1.6354E-16
'       Abs(15.098123) = 15.098123
'       Abs(0) = 0
'       Abs(-19.069713) = 19.069713
'       Abs(-1.5058E+19) = 1.5058E+19
'       Abs(-1.79769313486232E+308) = 1.79769313486232E+308

Комментарии

Абсолютное значение Double — это его числовое значение без знака. Например, абсолютное значение 1.2e03 и -1.2e03 равно 1.2e03.

Если value равно NegativeInfinity или PositiveInfinity, возвращаемое значение равно PositiveInfinity. Если value равно NaN, возвращаемое значение равно NaN.

Применяется к

Abs(Int16)

Исходный код:
Math.cs
Исходный код:
Math.cs
Исходный код:
Math.cs

Возвращает абсолютное значение 16-битового целого числа со знаком.

public:
 static short Abs(short value);
public static short Abs (short value);
static member Abs : int16 -> int16
Public Shared Function Abs (value As Short) As Short

Параметры

value
Int16

Число, которое больше Int16.MinValue, но меньше или равно Int16.MaxValue.

Возвращаемое значение

16-разрядное целое число со знаком x, такое, что 0 ≤ x ≤ Int16.MaxValue.

Исключения

value равно Int16.MinValue.

Примеры

В следующем примере метод используется Abs(Int16) для получения абсолютного значения ряда значений Int16 .

short[] values = { Int16.MaxValue, 10328, 0, -1476, Int16.MinValue };
foreach (short value in values)
{
   try {
      Console.WriteLine($"Abs({value}) = {Math.Abs(value)}");
   }
   catch (OverflowException) {
      Console.WriteLine("Unable to calculate the absolute value of {0}.",
                        value);
   }
}

// The example displays the following output:
//       Abs(32767) = 32767
//       Abs(10328) = 10328
//       Abs(0) = 0
//       Abs(-1476) = 1476
//       Unable to calculate the absolute value of -32768.
open System

let values = 
    [ Int16.MaxValue; 10328s; 0s; -1476s; Int16.MinValue ]

for value in values do
    try
        // The 'abs' function may be used instead.
        printfn $"Abs({value}) = {Math.Abs value}"
    with :? OverflowException ->
        printfn $"Unable to calculate the absolute value of {value}."

// The example displays the following output:
//       Abs(32767) = 32767
//       Abs(10328) = 10328
//       Abs(0) = 0
//       Abs(-1476) = 1476
//       Unable to calculate the absolute value of -32768.
Module Example
   Public Sub Main()
      Dim values() As Short = { Int16.MaxValue, 10328, 0, -1476, Int16.MinValue }
      For Each value As Short In values
         Try
            Console.WriteLine("Abs({0}) = {1}", value, Math.Abs(value))
         Catch e As OverflowException
            Console.WriteLine("Unable to calculate the absolute value of {0}.", _
                              value)
         End Try   
      Next
   End Sub
End Module
' The example displays the following output:
'       Abs(32767) = 32767
'       Abs(10328) = 10328
'       Abs(0) = 0
'       Abs(-1476) = 1476
'       Unable to calculate the absolute value of -32768.

Комментарии

Абсолютное значение Int16 — это его числовое значение без знака. Например, абсолютное значение 123 и -123 равно 123.

Применяется к

Abs(Int32)

Исходный код:
Math.cs
Исходный код:
Math.cs
Исходный код:
Math.cs

Возвращает абсолютное значение 32-битового целого числа со знаком.

public:
 static int Abs(int value);
public static int Abs (int value);
static member Abs : int -> int
Public Shared Function Abs (value As Integer) As Integer

Параметры

value
Int32

Число больше , чем Int32.MinValue, но меньше или равно Int32.MaxValue.

Возвращаемое значение

32-разрядное целое число со знаком x, такое, что 0 ≤ x ≤ Int32.MaxValue.

Исключения

value равно Int32.MinValue.

Примеры

В следующем примере метод используется Abs(Int32) для получения абсолютного значения ряда значений Int32 .

int[] values = { Int32.MaxValue, 16921, 0, -804128, Int32.MinValue };
foreach (int value in values)
{
   try {
      Console.WriteLine($"Abs({value}) = {Math.Abs(value)}");
   }
   catch (OverflowException) {
      Console.WriteLine("Unable to calculate the absolute value of {0}.",
                        value);
   }
}

// The example displays the following output:
//       Abs(2147483647) = 2147483647
//       Abs(16921) = 16921
//       Abs(0) = 0
//       Abs(-804128) = 804128
//       Unable to calculate the absolute value of -2147483648.
open System

let values = 
    [ Int32.MaxValue; 16921; 0; -804128; Int32.MinValue ]

for value in values do
    try 
        // The 'abs' function may be used instead.
        printfn $"Abs({value}) = {Math.Abs(value)}"
    with :? OverflowException ->
        printfn $"Unable to calculate the absolute value of {value}."

// The example displays the following output:
//       Abs(2147483647) = 2147483647
//       Abs(16921) = 16921
//       Abs(0) = 0
//       Abs(-804128) = 804128
//       Unable to calculate the absolute value of -2147483648.
Module Example
   Public Sub Main()
      Dim values() As Integer = { Int32.MaxValue, 16921, 0, -804128, Int32.MinValue }
      For Each value As Integer In values
         Try
            Console.WriteLine("Abs({0}) = {1}", value, Math.Abs(value))
         Catch e As OverflowException
            Console.WriteLine("Unable to calculate the absolute value of {0}.", _
                              value)
         End Try   
      Next
   End Sub
End Module
' The example displays the following output:
'       Abs(2147483647) = 2147483647
'       Abs(16921) = 16921
'       Abs(0) = 0
'       Abs(-804128) = 804128
'       Unable to calculate the absolute value of -2147483648.

Комментарии

Абсолютное значение Int32 — это его числовое значение без знака. Например, абсолютное значение 123 и -123 равно 123.

Применяется к

Abs(Int64)

Исходный код:
Math.cs
Исходный код:
Math.cs
Исходный код:
Math.cs

Возвращает абсолютное значение 64-битового целого числа со знаком.

public:
 static long Abs(long value);
public static long Abs (long value);
static member Abs : int64 -> int64
Public Shared Function Abs (value As Long) As Long

Параметры

value
Int64

Число, которое больше Int64.MinValue, но меньше или равно Int64.MaxValue.

Возвращаемое значение

64-разрядное целое число со знаком x, такое, что 0 ≤ x ≤ Int64.MaxValue.

Исключения

value равно Int64.MinValue.

Примеры

В следующем примере метод используется Abs(Int64) для получения абсолютного значения ряда значений Int64 .

long[] values = { Int64.MaxValue, 109013, 0, -6871982, Int64.MinValue };
foreach (long value in values)
{
   try {
      Console.WriteLine($"Abs({value}) = {Math.Abs(value)}");
   }
   catch (OverflowException) {
      Console.WriteLine("Unable to calculate the absolute value of {0}.",
                        value);
   }
}

// The example displays the following output:
//       Abs(9223372036854775807) = 9223372036854775807
//       Abs(109013) = 109013
//       Abs(0) = 0
//       Abs(-6871982) = 6871982
//       Unable to calculate the absolute value of -9223372036854775808.
open System

let values = 
    [ Int64.MaxValue; 109013; 0; -6871982; Int64.MinValue ]

for value in values do
    try
        // The 'abs' function may be used instead.
        printfn $"Abs({value}) = {Math.Abs value}"
    with :? OverflowException ->
        printfn $"Unable to calculate the absolute value of {value}."

// The example displays the following output:
//       Abs(9223372036854775807) = 9223372036854775807
//       Abs(109013) = 109013
//       Abs(0) = 0
//       Abs(-6871982) = 6871982
//       Unable to calculate the absolute value of -9223372036854775808.
Module Example
   Public Sub Main()
      Dim values() As Long = { Int64.MaxValue, 109013, 0, -6871982, Int64.MinValue }
      For Each value As Long In values
         Try
            Console.WriteLine("Abs({0}) = {1}", value, Math.Abs(value))
         Catch e As OverflowException
            Console.WriteLine("Unable to calculate the absolute value of {0}.", _
                              value)
         End Try   
      Next
   End Sub
End Module
' The example displays the following output:
'       Abs(9223372036854775807) = 9223372036854775807
'       Abs(109013) = 109013
'       Abs(0) = 0
'       Abs(-6871982) = 6871982
'       Unable to calculate the absolute value of -9223372036854775808.

Комментарии

Абсолютное значение Int64 — это его числовое значение без знака. Например, абсолютное значение 123 и -123 равно 123.

Применяется к

Abs(IntPtr)

Исходный код:
Math.cs
Исходный код:
Math.cs
Исходный код:
Math.cs

Возвращает абсолютное значение собственного целого числа со знаком.

public:
 static IntPtr Abs(IntPtr value);
public static nint Abs (nint value);
public static IntPtr Abs (IntPtr value);
static member Abs : nativeint -> nativeint
Public Shared Function Abs (value As IntPtr) As IntPtr

Параметры

value
IntPtr

nint

nativeint

Число, которое больше значения MinValue, но меньше или равно значению MaxValue.

Возвращаемое значение

IntPtr

nint

nativeint

Собственное целое число со знаком x, такое, что 0 ≤ x ≤ MaxValue.

Применяется к

Abs(SByte)

Исходный код:
Math.cs
Исходный код:
Math.cs
Исходный код:
Math.cs

Важно!

Этот API несовместим с CLS.

Возвращает абсолютное значение 8-битового целого числа со знаком.

public:
 static System::SByte Abs(System::SByte value);
[System.CLSCompliant(false)]
public static sbyte Abs (sbyte value);
[<System.CLSCompliant(false)>]
static member Abs : sbyte -> sbyte
Public Shared Function Abs (value As SByte) As SByte

Параметры

value
SByte

Число, которое больше SByte.MinValue, но меньше или равно SByte.MaxValue.

Возвращаемое значение

8-разрядное целое число со знаком x, такое, что 0 ≤ x ≤ SByte.MaxValue.

Атрибуты

Исключения

value равно SByte.MinValue.

Примеры

В следующем примере метод используется Abs(SByte) для получения абсолютного значения ряда значений SByte .

sbyte[] values = { SByte.MaxValue, 98, 0, -32, SByte.MinValue };
foreach (sbyte value in values)
{
   try {
      Console.WriteLine($"Abs({value}) = {Math.Abs(value)}");
   }
   catch (OverflowException) {
      Console.WriteLine("Unable to calculate the absolute value of {0}.",
                        value);
   }
}

// The example displays the following output:
//       Abs(127) = 127
//       Abs(98) = 98
//       Abs(0) = 0
//       Abs(-32) = 32
//       Unable to calculate the absolute value of -128.
open System

let values = 
    [ SByte.MaxValue; 98y; 0y; -32y; SByte.MinValue ]

for value in values do
    try
        // The 'abs' function may be used instead.
        printfn $"Abs({value}) = {Math.Abs value}"
    with :? OverflowException ->
        printfn $"Unable to calculate the absolute value of {value}."

// The example displays the following output:
//       Abs(127) = 127
//       Abs(98) = 98
//       Abs(0) = 0
//       Abs(-32) = 32
//       Unable to calculate the absolute value of -128.
Module Example
   Public Sub Main()
      Dim values() As SByte = { SByte.MaxValue, 98, 0, -32, SByte.MinValue }
      For Each value As SByte In values
         Try
            Console.WriteLine("Abs({0}) = {1}", value, Math.Abs(value))
         Catch e As OverflowException
            Console.WriteLine("Unable to calculate the absolute value of {0}.", _
                              value)
         End Try   
      Next
   End Sub
End Module
' The example displays the following output:
'       Abs(127) = 127
'       Abs(98) = 98
'       Abs(0) = 0
'       Abs(-32) = 32
'       Unable to calculate the absolute value of -128.

Комментарии

Абсолютное значение байта со знаком — это его числовое значение без знака. Например, абсолютное значение 12 и -12 равно 12.

Применяется к

Abs(Single)

Исходный код:
Math.cs
Исходный код:
Math.cs
Исходный код:
Math.cs

Возвращает абсолютное значение числа одинарной точности с плавающей запятой.

public:
 static float Abs(float value);
public static float Abs (float value);
static member Abs : single -> single
Public Shared Function Abs (value As Single) As Single

Параметры

value
Single

Число, которое больше или равно Single.MinValue, но меньше или равно Single.MaxValue.

Возвращаемое значение

Число с плавающей запятой с одной точностью x, такое, что 0 ≤ x ≤ Single.MaxValue.

Примеры

В следующем примере метод используется Abs(Single) для получения абсолютного значения ряда значений Single .

float[] values= { Single.MaxValue, 16.354e-12F, 15.098123F, 0F,
                  -19.069713F, -15.058e17F, Single.MinValue };
foreach (float value in values)
   Console.WriteLine($"Abs({value}) = {Math.Abs(value)}");

// The example displays the following output:
//       Abs(3.402823E+38) = 3.402823E+38
//       Abs(1.6354E-11) = 1.6354E-11
//       Abs(15.09812) = 15.09812
//       Abs(0) = 0
//       Abs(-19.06971) = 19.06971
//       Abs(-1.5058E+18) = 1.5058E+18
//       Abs(-3.402823E+38) = 3.402823E+38
open System

let values = 
    [ Single.MaxValue; 16.354e-12f; 15.098123f; 0f
      -19.069713f; -15.058e17f; Single.MinValue ]

for value in values do
    // The 'abs' function may be used instead.
    printfn $"Abs({value}) = {Math.Abs value}"

// The example displays the following output:
//       Abs(3.402823E+38) = 3.402823E+38
//       Abs(1.6354E-11) = 1.6354E-11
//       Abs(15.09812) = 15.09812
//       Abs(0) = 0
//       Abs(-19.06971) = 19.06971
//       Abs(-1.5058E+18) = 1.5058E+18
//       Abs(-3.402823E+38) = 3.402823E+38
Module Example
   Public Sub Main()
      Dim values() As Single = { Single.MaxValue, 16.354e-12, 15.098123, 0, _
                                  -19.069713, -15.058e17, Single.MinValue }
      For Each value As Single In values
         Console.WriteLine("Abs({0}) = {1}", value, Math.Abs(value))
      Next
   End Sub
End Module
' The example displays the following output:
'       Abs(3.402823E+38) = 3.402823E+38
'       Abs(1.6354E-11) = 1.6354E-11
'       Abs(15.09812) = 15.09812
'       Abs(0) = 0
'       Abs(-19.06971) = 19.06971
'       Abs(-1.5058E+18) = 1.5058E+18
'       Abs(-3.402823E+38) = 3.402823E+38

Комментарии

Абсолютное значение Single — это его числовое значение без знака. Например, абсолютное значение 1.2e-03 и -1.2e03 равно 1.2e03.

Если value равно NegativeInfinity или PositiveInfinity, возвращаемое значение равно PositiveInfinity. Если value равно NaN, возвращаемое значение равно NaN.

Применяется к