Java の Long toString の探索

JavaBeginner
オンラインで実践に進む

はじめに

この実験では、Java の Long クラスの toString() メソッドについて学びます。このメソッドの構文を調べ、それが取るパラメータと返す値を理解します。最後に、toString() メソッドの動作を理解するためにいくつかのサンプルプログラムを書いて実行します。

必要なパッケージとクラスをインポートする

Long クラスとそのメソッドを使用するには、java.lang パッケージをインポートする必要があります。Long.toString() メソッドは、指定された基数に関する long 値の String 表現を返します。このステップでは、java.lang パッケージをインポートし、パブリック型の LongToString クラスを作成します。

import java.lang.*;

public class LongToString {
    // class code
}

long を文字列に変換することを示すメソッドを作成する

このステップでは、LongToString クラス内にパブリックな静的メソッド convertLongToString() を作成します。このメソッドは、2 つのパラメータを受け取ります。long 型の値 lradix 型の値 r で、これらは String 変換の基数を定義します。最後に、このメソッドは long 型の値の文字列表現を含む String 型の値を返します。

public static String convertLongToString(long l, int r) {
    String s = Long.toString(l, r);
    return s;
}

異なる値で convertLongToString() メソッドを呼び出す

このステップでは、異なる long 型と基数の値で convertLongToString() メソッドを複数回呼び出します。返された文字列をコンソールに出力します。

public static void main(String[] args) {
    // 10 進数の基数 (10) を使用
    long l1 = 2584L;
    int r1 = 10;
    System.out.println("Decimal Equivalent of " + l1 + ": " + convertLongToString(l1, r1)); // 出力:"Decimal Equivalent of 2584: 2584"

    // 16 進数の基数 (16) を使用
    long l2 = 255L;
    int r2 = 16;
    System.out.println("Hexadecimal Equivalent of " + l2 + ": " + convertLongToString(l2, r2)); // 出力:"Hexadecimal Equivalent of 255: ff"

    // 8 進数の基数 (8) を使用
    long l3 = 133;
    int r3 = 8;
    System.out.println("Octal Equivalent of " + l3 + ": " + convertLongToString(l3, r3)); // 出力:"Octal Equivalent of 133: 205"
}

例外を処理するコード

前のステップでは、ユーザーから無効な入力が提供された場合の例外処理を行っていませんでした。このステップでは、try-catch ブロックを使用して任意の例外を処理します。

import java.util.Scanner;
import java.lang.*;

public class LongToString {
    public static String convertLongToString(long l, int r) {
        String s = Long.toString(l, r);
        return s;
    }

    public static void main(String[] args) {
        try {
            System.out.println("Enter a long value and a radix: ");
            Scanner sc = new Scanner(System.in);
            long num = sc.nextLong();
            int radix = sc.nextInt();
            System.out.println(convertLongToString(num, radix));
        } catch (Exception e) {
            System.out.println("Invalid input. " + e.getMessage());
        }
    }
}

コードをコンパイルして実行する

コードを実行するときは、LongToString クラスの main() メソッドを呼び出すことができます。これが convertLongToString() メソッドを呼び出して文字列変換を行います。Java コードをコンパイルしてターミナルで実行することができます。これを行うには、以下の手順に従ってください。

  1. ターミナルを開く
  2. cd コマンドを使用して、LongToString.java ファイルが保存されているディレクトリに移動する
  3. javac LongToString.java コマンドを使用してコードをコンパイルし、Enter キーを押す
  4. java LongToString コマンドを使用してコードを実行し、Enter キーを押す
  5. コードが実行されると、ユーザーに long 値と 基数 値を別々の入力行で入力するよう促される
  6. ユーザーが値を入力すると、プログラムは入力された基数に関する入力された long 値の String 同等値を出力する
$ cd ~/project
$ javac LongToString.java
$ java LongToString
Enter a long value and a radix:
377
16
17f

まとめ

この実験では、Java の Long クラスの Long.toString() メソッドについて学びました。toString() メソッドの構文とそれが取るパラメータについて学びました。また、toString() メソッドを使用して、与えられた基数値に関して long 値をその同等の String 表現に変換するいくつかのサンプル プログラムを書き、実行しました。また、ユーザーからの入力を取得しながら例外を処理する方法についても学びました。