public class DigitCountExample {
public static void main(String[] args) {
// 与えられた整数
int number = 123456789;
// 桁数をカウント
int digitCount = countDigits(number);
// 結果を表示
System.out.println("与えられた整数: " + number);
System.out.println("桁数: " + digitCount);
}
// 整数の桁数をカウントするメソッド
private static int countDigits(int number) {
// 整数を文字列に変換
String numberStr = Integer.toString(number);
// 文字列の長さ(桁数)を返す
return numberStr.length();
}
}このプログラムでは、countDigits メソッドが整数を文字列に変換し、その文字列の長さを返しています。main メソッドで特定の整数を指定し、結果を表示しています。このプログラムを実行すると、与えられた整数の桁数が表示されます。
ラッパークラス
Javaのラッパークラスは、基本データ型をオブジェクトとして扱うためのクラスです。基本データ型(int、double、char など)はプリミティブな型であり、オブジェクトではないため、一部の場面でオブジェクトが必要なケースや、ジェネリクスなどの機能を使用する際にはラッパークラスが利用されます。
以下に、主なラッパークラスとそれぞれの基本データ型との対応を示します:
- Integer (
int):intのラッパークラス。整数を扱うためのメソッドや機能が提供されています。
- Long (
long):longのラッパークラス。64ビット整数を扱います。
- Float (
float):floatのラッパークラス。32ビット浮動小数点数を扱います。
- Double (
double):doubleのラッパークラス。64ビット浮動小数点数を扱います。
- Character (
char):charのラッパークラス。文字を扱います。
- Boolean (
boolean):booleanのラッパークラス。真偽値を扱います。
これらのラッパークラスはそれぞれ Integer、Long、Float、Double、Character、Boolean という名前で提供されています。これにより、プリミティブ型をオブジェクトとして扱えるようになり、例えばジェネリクスやコレクションフレームワークなどで利用できます。
ラッパークラスは不変(immutable)であるため、一度値が設定されると変更できません。値を変更したい場合は新しいラッパークラスのインスタンスを作成する必要があります。例えば、Integer クラスの valueOf メソッドを使って新しいインスタンスを作成することができます。
Integer num = Integer.valueOf(42); // 新しい Integer インスタンスの作成これらのラッパークラスは autoboxing(プリミティブ型からラッパークラスへの自動変換)および unboxing(逆の変換)の機能も提供しており、これによりプリミティブ型とラッパークラスを相互に変換する際の記述が簡略化されます。


