プログラミング Java

【Java】Doubleとdoubleの違いは何か?

投稿日:

結論

Double:オブジェクト型
double:プリミティブ型
「Doubleはdoubleをラップしたオブジェクトである」ということです。

(・ω・´。)ん?つまりどういうこと?

こゆこと。
 ↓
Double:オブジェクト型 → フィールド(単一のdouble値)、メソッドを持つ
double:プリミティブ型 → 単一のdouble値を持つのみ

※Integer(オブジェクト型)とint(プリミティブ型)の関係と同じなので、そっちの方が理解しやすいかもしれませんね。

 

ソースコード

補足

Java9以降において、Doubleを含むいくつかのオブジェクト型はコンストラクタ呼び出し時に値を設定する方法が非推奨になりました。
そのため、上記のようにJava8までとJava9以降で初期値の設定方法を変えています。

(引用元)クラスDouble
https://docs.oracle.com/javase/jp/9/docs/api/java/lang/Double.html#constructor
 

使い分け

DoubleはtoStringやintValueなどのメソッド使う必要である場合に使い、
doubleはただのdouble値を保持するだけという場合に使用すればよいでしょう。
 

まとめ

  • Doubleはオブジェクト型、doubleはプリミティブ型という違いがある。
  • Java8までとJava9以降で初期化の推奨方法が異なる。
  • メソッドを使用して何らかの処理をしたい場合は、Doubleを使用すればよい。

 
最後までお読み頂き、ありがとうございました!
ご意見・ご要望がありましたら、遠慮なくコメント下さい!
もし内容が良かったらランキング評価を頂けると励みになります(^^)

ランキング評価する

-プログラミング, Java
-,

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


関連記事

【Java】LinkedHashSetの使い方(挿入順を保持するSet)

LinkedHashSetはHashSetのサブクラスであり、同じメソッドが実装されています。 メソッドの使い方であればHashSetと同じなので、HashSetの使い方を参照下さい。  ↓ 【Jav …

エンジニア未経験者の転職が難しくなったので解決策を提案してみる

現状 コロナ以降、未経験者のエンジニア採用が少しずつなくなっていきました。 それまではポートフォリオを作ったり、ある程度のポテンシャルがあると判断されれば 採用されるということがあったのですが、それが …

【Java入門】クラスの基本

概要 以前、クラスとインスタンスの違いでクラスについて簡単に触れました。 ここではクラスの内容を掘り下げて説明していきます。   クラスの構成 クラスの基本構成は以下の3つです。 ・フィールド  :ク …

【Node.js】Excel⇔JSON変換する方法

やること 1.ExcelファイルをJSONで取得。 2.JSONの編集後、新しいExcelファイルに出力する。 環境 Node.js ・インストール  https://nodejs.org/ja/   …

no image

画面にonclickを書かずにイベントを発生させる方法

画面にonclickを記述すると、JavaScript側で関数名が変更になった際の修正が面倒になる。 なのでonclickを記述せずにイベントを発生させるように記述することが望ましいと子ドレビューで指 …

記事を探す

SpringFramworkの良書

■おすすめ教材
Javaの基本を学んだ人が、次のステップとして読む本(中級者向け)

※SpringはJavaのFrameworkの1つです。
変更のしやすさ、保守性の高さが特徴です。