質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JavaFX

JavaFXとは、Java仮想マシン上で動作するリッチインターネットアプリケーション (RIA) のGUIライブラリです。Swingとは異なり、FXMLと呼ばれる XMLとCSSを併用してデザインを記述します。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

解決済

3回答

1411閲覧

変数宣言に使うデータ型の種類について

mr0237

総合スコア164

JavaFX

JavaFXとは、Java仮想マシン上で動作するリッチインターネットアプリケーション (RIA) のGUIライブラリです。Swingとは異なり、FXMLと呼ばれる XMLとCSSを併用してデザインを記述します。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2017/05/13 07:29

頭があれで、説明が下手ですいませんが、Javaでは変数宣言に使う「型」が9つぐらいありますが↓

|分類|型名|格納するデータ|利用頻度|
|:--|:--:|:--:|:--:|--:|
|整数|long|大きな整数|△|
|整数|int|普通の整数|◎|
|整数|short|小さな整数|△|
|整数|byte|さらに小さな整数|△|
|小数|double|普通の小数|〇|
|小数|float|少しあいまいでもよい小数|△|
|真偽値|boolean|trueかfalse|〇|
|文字|char|1つの文字|△|
|文字列|String|文字列の並び|◎|

1.整数で使う型が4つもあるのはなぜでしょうか?良く使われる型がintだけで、それ以外はあまり使わないと思いますが、なぜ3種類もあるのですか?

2.小数で使う型が2つあり、doubleのほうはより厳密な計算ができるのですが、floatのほうはあまり厳密な計算ができないようですが、なぜ「厳密な計算(double)」と「厳密ではない(あいまいな)計算(float)」←この2つがあるのですか?

3.文字で使う型(char)文字列(String)で使う型がありますが、なぜ2つもあるのですか?
文字列型(String)はよく使われますが、文字型(char)はあまり使われないと思いますがなぜ2つもあるのでしょうか?

よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

いちばん端的に言ってしまえば、設計者がそう決めたから以上の理由はないです。実際、Ruby 2.4には整数がIntegerだけ(メモリの許す限りの桁数に対応)、小数もdouble相当のものしかありません。さらには、JavaScriptの数値はdouble相当のものが1つあるだけです。

とはいえ、これだけの型を用意したのは、他の環境との互換性という側面もあります。CPU自身が扱えるデータとして8ビット、16ビット、32ビット、64ビット整数、32ビット・64ビットの浮動小数点数のような型がありますので、OS環境とデータをやり取りする場合にはそれ相応の型が必要となります。

Javaの設計は90年台になりますので、Rubyのような「大きめの型で全部済ませる」では当時に性能が出なかったので、必要なサイズの型を適宜使えるように用意しておいた、ということもあるのかもしれません。

投稿2017/05/13 07:41

maisumakun

総合スコア145183

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

The Java™ Tutorials Primitive Data Types(英語)より

byte型 / short型
・配列宣言時のメモリの節約
・int型より制限された値を扱う事をドキュメントで表明

投稿2017/05/14 04:45

umyu

総合スコア5846

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

3.文字で使う型(char)と文字列(String)で使う型がありますが、なぜ2つもあるのですか?

文字列型(String)はよく使われますが、文字型(char)はあまり使われないと思いますがなぜ2つもあるのでしょうか?

Stringの実体はcharの配列です。charなしにStringは存在しません。

投稿2017/05/13 12:49

swordone

総合スコア20651

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問