sixty-life

還暦を迎えた今、独学でプログラミング学習をする日々の記録

いろいろなデータ型①基本データ型

基礎からのJava 改訂版

Part 02 Chapter 06(P.80)

Javaの基本データ型(プリミティブ型)

種類

用途、説明

範囲

リテラルの例

論理

boolean

真偽値

trueまたはfalse

true、false

整数

char

2バイトUnicode文字。
文字列ではなくて1文字

‘¥u0000’〜’¥uffff’

A’、’あ’、’¥u3042

 

byte

1バイト整数 (2bit)

-128(-27)〜127(27-1)

12(10進数)、
12L
011(8進数)、
0x2b(16進数)

short

2バイト整数 (16bit)

-32768(-215)〜32767(215-1)

int

4バイト整数。(32bit)
普通の数字はこれ

-231 〜231-1

long

8バイト整数。intで桁が足りない時はこれ (64bit)

-263 〜263-1

浮動少数

float

4バイト浮動小数

単精度の浮動小数点数

1.2、1.2d、1.2f

 

double

8バイト浮動小数

倍精度の浮動小数点数

 

 

データ型には「基本データ型(プリミティブ型)」と、のちに出てくる「参照型」がある。

「参照型」には配列やクラスなどが含まれる。

表の「範囲」は、格納できる値の範囲で、範囲がおおきいデータ型はいろんな数んおデータが入るが、1つのデータにつきメモリ容量をたくさん使う。

基本データ型はC言語の時代から続いているそうです。

整数

  • byte
  • short
  • int
  • long

127を超える数を扱う場合、byteでは入りきらないのでそれより大きいintなどを使う必要がある。一方、byteの方が一つの変数当たりに使われるメモリ領域が少ないので、変数の個数が多き場合にはbyteの方がメモリの節約になる。

ただし、現在のパソコンは高性能でメモリも大量に搭載しているので、通常のアプリケーション開発では、よほど大量のデータを扱うのでなければ、このようなメモリの節約云々を機にする必要はありません。

組み込みや携帯電話用アプリなどメモリの少ない環境でない限り、特に理由がない場合は<int>を選択し、intに格納できない大きな数字を扱う時は<long>を選びましょう。

整数リテラル

リテラルってなんだっけ?

リテラルソースコード中に直接記述する、値を示す文字のことをリテラル(literal)という。例えば「int a = 1」の代入する「1」がリテラルです。

普通の数字で記述

int a = 10;

 

数字の後ろにL(または小文字のl)をつけると、整数リテラルがlong型であることを示す。整数の範囲を超える数字の場合や明示的にlong型であることを示したい場合にLをつける。

long b = 123456789101L;

 

8進数の整数リテラルの記述例

先頭に「0」をつける

int c = 012;

(8進数の12は10進数10)

 

16進数の整数リテラルの記述例

先頭に「0x」をつける

int d = 0xA;

(16進数のAは10進数の10)

VS Code

public class Renshu_ori {
public static void main(String[] args) {
int a = 10;
long b = 123456789101L;
int c = 012;
int d = 0xA;

System.out.println("a=" + a);
System.out.println("b=" + b);
System.out.println("c=" + c);
System.out.println("d=" + d);
}
}

ターミナル:

  datatype javac Renshu_ori.java

  datatype java Renshu_ori      

a=10

b=123456789101

c=10

d=10

 

学習テキスト

基礎からのJava 改訂版