Javaでint型とdouble型を変換する方法を現役エンジニアが解説【初心者向け】

初心者向けにJavaでint型とdouble型を変換する方法について解説しています。整数を扱うint型と少数を扱うdouble型の基本、int型からdouble型へ変換する方法、double型からint型へ変換する方法それぞれについて学びましょう。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事が4,000以上あります。現役エンジニアの方はこちらをご覧ください。

Javaでint型とdouble型を変換する方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

 

Javaについてそもそもよく分からないという方は、Javaとは何なのか解説した記事を読むとさらに理解が深まるでしょう。

 

なお本記事は、TechAcademyのオンラインブートキャンプ、Java講座の内容をもとに作成しています。

 

田島悠介

今回は、Javaに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

int型とdouble型を変換する方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

int型とは

int型とは、符号付整数を扱うことのできるデータ型です。

下記の範囲で使用することができます。

基本データ型 意味 サイズ 範囲
int 符号付整数 32bit -2,147,483,648〜2,147,483,647

主に整数値を扱う際に使用するデータ型です。

 

double型とは

double型とは、浮動小数を扱うことのできるデータ型です。

基本データ型の1つで、下記の範囲のデータを扱うことができます。

基本データ型 意味 サイズ 範囲
double 浮動小数 64bit ±4.940655645841246544 × (10の324乗)
~±1.79769313486231570 × (10 の 308乗)

主に小数値を扱う際に使用するデータ型です。

 

[PR] Javaで挫折しない学習方法を動画で公開中

int型からdouble型へ変換する方法

変換後の値のデータ型が変換前の値のデータ型よりも大きい場合、自動的に暗黙的な型変換と呼ばれるデータ型の変換が行われます。

例えば、32bitのデータであるint型のデータ10を、64bitのデータであるdouble型の変数に代入する場合、データは自動的にdouble型のデータ10.0に変換されてからdouble型の変数に代入される形となるでしょう。

 

double型からint型へ変換する方法

変換後の値のデータ型が変換前の値のデータ型よりも小さい場合には、自動的に明示的な型変換(キャスト)をおこないます。

この場合は、64bitのデータであるdouble型のデータ10.0を、32bitのデータ型であるint型に変換する場合は、下記のように記述しましょう。

(int)10.0

 

double型からint型へ変換する時の注意点

double型からint型へキャストを行った際、int型のデータでは保持で期待小数点以下のデータは切り捨てられます。

(int)10.3 → 10

 

実際に書いてみよう

それぞれの変換を実際のプログラムを書いて確認していきます。

public class ExpantionCode {
	public static void main(String[] args) {
		int iValue = 10;
		double dValue;
		dValue = iValue;	//double型の変数に対してint型のデータを代入
		System.out.println("int型の" + iValue + "から、double型の" + dValue + "へ変換");
		System.out.println("double型の" + dValue + "を、int型へ変換すると"+ (int)dValue);

		dValue = 10.3;
		System.out.println("double型の" + dValue + "を、int型へ変換すると"+ (int)dValue);
	}
}

実行結果

int型の10から、double型の10.0へ変換
double型の10.0を、int型へ変換すると10
double型の10.3を、int型へ変換すると10

 

執筆してくれたメンター

松井紀明

メーカー系で17年エンジニアとして勤務後、現在はフリーのエンジニアとしてリモートワークで働いています。

Java、Perl、COBOL、最近ではRuby、PHP等、様々な言語での開発を経験しています。

TechAcademyではJavaコースを担当しています。

 

大石ゆかり

Javaでint型とdouble型を変換する方法がよく分かったので良かったです!

田島悠介

ゆかりちゃん、これからも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも最短4週間で、JavaやServletの技術を使ってWebアプリケーション開発を習得できる、オンラインブートキャンプを開催しています。

また、現役エンジニアから学べる無料体験も実施しているので、参加してみてください。