Export (0) Print
Expand All

Math.Sign Method (Int64)

Returns a value indicating the sign of a 64-bit signed integer.

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

'Declaration
Public Shared Function Sign ( _
	value As Long _
) As Integer
'Usage
Dim value As Long
Dim returnValue As Integer

returnValue = Math.Sign(value)
public static int Sign (
	long value
)
public static function Sign (
	value : long
) : int
Not applicable.

Parameters

value

A signed number.

Return Value

A number indicating the sign of value.

Number

Description

-1

value is less than zero.

0

value is equal to zero.

1

value is greater than zero.

The following example demonstrates how to use the Sign method to determine the sign of a Int64 value and print it to the console.

' This example demonstrates Math.Sign()
Imports System

Class Sample
   Public Shared Sub Main()
      Dim str As String = "{0}: {1,3} is {2} zero."
      Dim nl As String = Environment.NewLine
      
      Dim xByte1 As Byte = 0
      Dim xShort1 As Short = -2
      Dim xInt1 As Integer = -3
      Dim xLong1 As Long = -4
      Dim xSingle1 As Single = 0F
      Dim xDouble1 As Double = 6.0
      Dim xDecimal1 As [Decimal] = -7D
      ' The following type is not CLS-compliant: SByte
      
      Console.WriteLine("{0}Test the sign of the following types of values:", nl)
      Console.WriteLine(str, "Byte   ", xByte1, Test(Math.Sign(xByte1)))
      Console.WriteLine(str, "Int16  ", xShort1, Test(Math.Sign(xShort1)))
      Console.WriteLine(str, "Int32  ", xInt1, Test(Math.Sign(xInt1)))
      Console.WriteLine(str, "Int64  ", xLong1, Test(Math.Sign(xLong1)))
      Console.WriteLine(str, "Single ", xSingle1, Test(Math.Sign(xSingle1)))
      Console.WriteLine(str, "Double ", xDouble1, Test(Math.Sign(xDouble1)))
      Console.WriteLine(str, "Decimal", xDecimal1, Test(Math.Sign(xDecimal1)))
      '
      Console.WriteLine("{0}The following type is not supported: SByte", nl)
   End Sub 'Main
   '
   Public Shared Function Test([compare] As Integer) As [String]
      If [compare] = 0 Then
         Return "equal to"
      ElseIf [compare] < 0 Then
         Return "less than"
      Else
         Return "greater than"
      End If
   End Function 'Test
End Class 'Sample 
'
'This example produces the following results:
'
'Test the sign of the following types of values:
'Byte   :   0 is equal to zero.
'Int16  :  -2 is less than zero.
'Int32  :  -3 is less than zero.
'Int64  :  -4 is less than zero.
'Single :   0 is equal to zero.
'Double :   6 is greater than zero.
'Decimal:  -7 is less than zero.
'
'The following type is not supported: SByte
'

// This example demonstrates Math.Sign()
import System.*;

class Sample
{
    public static void main(String[] args)
    {
        String str = "{0}: {1,3} is {2} zero.";
        String nl = Environment.get_NewLine();

        ubyte xByte1 = 0;
        short xShort1 = -2;
        int xInt1 = -3;
        long xLong1 = -4;
        float xSingle1 = 0;
        double xDouble1 = 6.0;
        Decimal xDecimal1 = new Decimal(-7);

        // The following type is not CLS-compliant.
        byte xSbyte1 = -101;

        Console.WriteLine("{0}Test the sign of the following types of values:",
            nl);
        Console.WriteLine(str, "Byte   ", System.Convert.ToString(xByte1), 
            Test(System.Math.Sign(xByte1)));
        Console.WriteLine(str, "Int16  ", System.Convert.ToString(xShort1), 
            Test(System.Math.Sign(xShort1)));
        Console.WriteLine(str, "Int32  ", System.Convert.ToString(xInt1), 
            Test(System.Math.Sign(xInt1)));
        Console.WriteLine(str, "Int64  ", System.Convert.ToString(xLong1), 
            Test(System.Math.Sign(xLong1)));
        Console.WriteLine(str, "Single ", System.Convert.ToString(xSingle1), 
            Test(System.Math.Sign(xSingle1)));
        Console.WriteLine(str, "Double ", System.Convert.ToString(xDouble1), 
            Test(System.Math.Sign(xDouble1)));
        Console.WriteLine(str, "Decimal", System.Convert.ToString(xDecimal1), 
            Test(System.Math.Sign(xDecimal1)));
        //
        Console.WriteLine("{0}The following type is not CLS-compliant.", nl);
        Console.WriteLine(str, "SByte  ", System.Convert.ToString(xSbyte1), 
            Test(System.Math.Sign(xSbyte1)));
    } //main

    //
    public static String Test(int compare)
    {
        if (compare == 0) {
            return "equal to";
        }
        else {
            if (compare < 0) {
                return "less than";
            }
            else {
                return "greater than";
            }
        }
    } //Test 

/*
This example produces the following results:

Test the sign of the following types of values:
Byte   :   0 is equal to zero.
Int16  :  -2 is less than zero.
Int32  :  -3 is less than zero.
Int64  :  -4 is less than zero.
Single :   0 is equal to zero.
Double :   6 is greater than zero.
Decimal:  -7 is less than zero.

The following type is not CLS-compliant.
SByte  : -101 is less than zero.
*/
} //Sample

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 2.0, 1.0

XNA Framework

Supported in: 1.0

Community Additions

ADD
Show:
© 2014 Microsoft