探索 Java Long 类的 toUnsignedString 方法

Beginner

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

介绍

在本实验中,我们将学习 Java 中 Long 类的 toUnsignedString(long,int) 方法。该方法用于将作为参数传递的 long 值,按照指定的基数(radix)以无符号整数的形式返回为字符串。


Skills Graph

导入 java.lang.Long 包并创建主方法

import java.lang.Long;

public class LongToUnsignedString {
    public static void main(String[] args) {
        // code here
    }
}

定义并初始化一些 long 和 integer 值

    long a = -78L;
    int b = 78;
    int d = 10;
    int h = 16;
    int o = 8;

使用 toUnsignedString() 方法将 long 值转换为无符号字符串表示

    String s1 = Long.toUnsignedString(a,d);
    String s2 = Long.toUnsignedString(a,h);
    String s3 = Long.toUnsignedString(a, o);
    String s4 = Long.toUnsignedString(b, d);
    String s5 = Long.toUnsignedString(b, h);
    String s6 = Long.toUnsignedString(b, o);

显示无符号字符串表示

    System.out.println("Equivalent String Value = " + s1);
    System.out.println("Equivalent String Value = " + s2);
    System.out.println("Equivalent String Value = " + s3);
    System.out.println("Equivalent String Value = " + s4);
    System.out.println("Equivalent String Value = " + s5);
    System.out.println("Equivalent String Value = " + s6);

编译并运行程序

javac LongToUnsignedString.java && java LongToUnsignedString

输出结果应为:

    Equivalent String Value = 18446744073709551538
    Equivalent String Value = ffffffffffffffb2
    Equivalent String Value = 1777777777777777777662
    Equivalent String Value = 78
    Equivalent String Value = 4e
    Equivalent String Value = 116
  1. 在下一步中,我们将创建一个程序,允许用户输入自己的值和基数,并将其转换为无符号字符串。

修改 main 方法

    public static void main(String[] args) {
        try {
            System.out.println("Enter the value and base:");
            Scanner sc = new Scanner(System.in);
            long val = sc.nextLong();
            int b = sc.nextInt();
            System.out.println("Output: " + Long.toUnsignedString(val, b));
        }
        catch(Exception e) {
            System.out.println("Invalid Input!!");
        }
    }

编译并运行程序

javac LongToUnsignedString.java && java LongToUnsignedString

输出结果应为:

    Enter the value and base:
    7445 8
    Output: 16425

当提示时,用户应输入一个值和基数,以将其转换为无符号字符串。

总结

在本实验中,我们学习了 Java 中 Long 类的 toUnsignedString(long,int) 方法。我们创建了两个 Java 程序:一个使用该方法将 long 值转换为基于基数的无符号字符串表示,另一个允许用户输入自己的值和基数,以将其转换为无符号字符串。通过完成本实验,我们对 Long 类及其方法有了更深入的理解。