Java Integer.toUnsignedLong()方法

原文:https://www.studytonight.com/java-wrapper-class/java-integer-tounsignedlong-method

Java toUnsignedLong()方法是java.lang包的Integer类的一部分。此方法用于通过无符号转换返回整数值的长等价物。

在无符号转换为长整型的情况下,低位 32 位被视为所传递整数值的实际位,而高位 32 位被视为零。

语法:

public static long toUnsignedLong(int i)

参数:

传递的参数是整数值,其长等效项将使用无符号转换返回。

返回:

使用无符号转换返回作为参数传递的整数值的长等价物。

例 1:

这里,使用无符号转换将一些有符号和无符号整数值转换为它的长等价物。

public class StudyTonight
{  
    public static void main(String[] args) 
    {  
        int a = 10;  
        int b = 20;  
        int c = -10;  
        int d = -20;  

        long a1 = Integer.toUnsignedLong(a);  //unsigned conversion to long 
        long b1 = Integer.toUnsignedLong(b);  //unsigned conversion to long 
        long c1 = Integer.toUnsignedLong(c);  //unsigned conversion to long   
        long d1 = Integer.toUnsignedLong(d);  //unsigned conversion to long       
        System.out.println("Long Equivalent is  = " + a1);  
        System.out.println("Long Equivalent is  = " + b1);  
        System.out.println("Long Equivalent is  = " + c1);          
        System.out.println("Long equivalent is  = " + d1);  
    }  
}

长当量为= 10 长当量为= 20 长当量为= 4294967286 长当量为= 4294967276

例 2:

这里有一个用户定义的例子,任何使用这段代码的人都可以输入自己选择的值,并获得等效的输出。

import java.util.Scanner; 

public class StudyTonight
{  
    public static void main(String[] args) 
    {            
        try
        {
           System.out.print("Enter the value ");  
           Scanner sc = new Scanner(System.in);  
           int value = sc.nextInt();                                  
           long result = Integer.toUnsignedLong(value);   //returns long equivalent               
           System.out.println("Output: "+result); 
        }
        catch(Exception e)
        {
           System.out.println("Invalid Input!!");
        }        
    }  
}

输入数值 93 输出:93 *输入数值-18 输出:4294967278 *输入数值 0x590 无效输入!!

实时示例:

在这里,您可以测试实时代码示例。您可以为不同的值执行示例,甚至可以编辑和编写您的示例来测试 Java 代码。