Webサイト制作コースのお申し込みはこちら Webサイト制作コースのお申し込みはこちら

Javaのbyte型とは

byte型とは、Java言語で使われるデータ型のことです。

byte型で変数を宣言すると、消費するメモリが1バイトになります。

扱える値は、-128〜127の範囲です。

その他のデータ型と比較してみると、次の通りです。

数値型としては、一番小さな範囲を扱うデータ型であるのがわかります。

データ型 種類 ビット数 範囲
byte 数値 1バイト(8ビット) -128〜127(約128)
short 数値 2バイト(16ビット) -32,768〜32,767(約3.2万)
int 数値 4バイト(32ビット) -2,147,483,648〜2,147,483,647(約21億)
long 数値 8バイト(64ビット) -9,223,372,036,854,775,808〜9,223,372,036,854,775,807(約900京)
float 浮動小数点 4バイト(32ビット) ±3.40282347E+38~ 1.40239846E-45
double 浮動小数点 8バイト(64ビット) ±1.79769313486231570E+308~±4.94065645841246544E-324
boolean 真偽値 1ビット true or false

では、byte型の使い方を見ていきましょう!

byte型の使い方

byte型もデータ型の1つなので、他のデータ型同様、宣言して使います

使う場合は、次のように記述しましょう。

byte 変数名 = 値;
■記述例
public class Main{
  public static void main(String[] args){
    byte b = 10;
    System.out.println(b);
  }
}

■実行結果
mbp:desktop potepan$ java Main
10

また、配列変数としても宣言可能です。

■記述例
public class Main{
  public static void main(String[] args){
    byte[] bAry = new byte[3];
    bAry[0] = 10;
    bAry[1] = 20;
    bAry[2] = 30;
    System.out.println(bAry[1]);

    //以下の書き方でもOK
    byte[] bAry = {10, 20, 30};
  }
}

■実行結果
mbp:desktop potepan$ java Main
20

といった一連の操作も、他のデータ型同様に扱えます。

byte型を他のプリミティブ型に変換する

byte型を他の型に変換できますか?

可能です!ここでは、他のプリミティブ型(静的に型付けされるプログラミング言語)に変換する方法を見ていきましょう!

Javaでは、byte型を他の型に変換可能ですが、いくつか注意しておきたい点もあります。

その点も踏まえて、ここでは型の変換方法を確認しましょう。

byte型⇄int型の変換

まずは、byte型とint型の変換です。

型の変換を行うには、次のように記述します。

以下は、byte型をint形に変換しています。

■記述例
public class Main{
  public static void main(String[] args){
    byte b = 10;
    int i = (int) b;
    System.out.println(i);
  }
}

上記のように、変換するbyte型の変数「b」の前に「(int)」を記述して、キャストします。

実行結果は次の通りです。

■実行結果
mbp:desktop potepan$ java Main
10

見た目にはわかりませんが、型変換が行われ、正常に動作しています。

 

逆に、int型からbyte型に変換するには、記述を逆にすればOKです。

■記述例
public class Main{
  public static void main(String[] args){
    int i = 10;
    byte b = (byte) i;
    System.out.println(b);
  }
}

ただし、byte型で扱える範囲は-128〜127ですので、ビット数分のデータだけをデータとして取り出す形になります。

■記述例
public class Main{
  public static void main(String[] args){
    int i = 200;
    byte b = (byte) i;
    System.out.println(b);
  }
}

■実行結果
mbp:desktop potepan$ java Main
-56

変換としては次のようになっています。

これは、short型やlong型でも同様の処理になります。

大きいデータ型から小さいデータ型に変換する場合は、注意が必要です。

ポテパンダの一言メモ

byte型とint型を変換するには「(int)」「(byte)」を使う!

byte型⇄String型の変換

次に、byte型とString型の変換です。

byte型からString型へ変換する際は、「String.valueOf()」または「Byte.toString()」が簡単に使えて便利です。

実際に記述してみると、次のように書けます。

■記述例(String.valueOf())
public class Main{
  public static void main(String[] args){
    byte b = 10;
    String s = String.valueOf(b);
    System.out.println(s);
  }
}

■記述例(Byte.toString())
public class Main{
  public static void main(String[] args){
    byte b = 10;
    String s = Byte.toString(b);
    System.out.println(s);
  }
}

■実行結果
mbp:desktop potepan$ java Main
10

実行結果はどちらも同じです。

では、String型からbyte型に変換する方法も確認しましょう。

変換には、「getBytesメソッド」が使えます。

記述方法は、次の通りです。

■記述例
public class Main{
  public static void main(String[] args){
    String s = "potepan";
    byte[] bAry = s.getBytes();

    for(int i = 0; i < bAry.length; i++) {
        System.out.println(bAry[i]);
    }
  }
}

■実行結果
mbp:desktop suzuka$ java Main
112
111
116
101
112
97
110

String型の変数「s」を、getBytesメソッドでbyte型配列「bAry」に代入しています。

そして、for文で1文字ずつ取り出し、byte型として出力されていますね。

このように、String型からbyte型に変換するには、getBytesメソッドが使えます。

ポテパンダの一言メモ

byte型からString型へ変換する際は、「String.valueOf()」または「Byte.toString()」を使う!

String型からbyte型に変換するには、「getBytesメソッド」を使う!

byte型⇄char型の変換

byte型とchar型を変換する方法も見ていきましょう!

まず、byte型からchar型への変換は、int型と同じくキャストすればOKです。

■記述例
public class Main{
  public static void main(String[] args){
    byte b = 10;
    char c = (char) b;
    System.out.println((int)c);
  }
}

■実行例
mbp:desktoppotepan$ java Main
10

一方、char型からbyte型への変換は、一度String型に変換し、getBytesメソッドを使います。

記述方法は、次の通りです。

■記述例
public class Main{
  public static void main(String[] args){
    char c = 'p';
    String s = String.valueOf(c);
    byte bAry[] = s.getBytes();

    for(int i = 0; i < bAry.length; i++){
        System.out.println(bAry[i]);
    }
  }
}

■実行結果
mbp:desktop potepan$ java Main
112

このように、byte型で結果を取得できました。

byte型⇄String型の変換」で紹介した、String.valueOf()を使って、char型をString型に変換しています。

その後、getBytes()でbyte型に変換する流れですね。

char型をbyte型に変換する場合は、ぜひこの方法を試してみてください。

ポテパンダの一言メモ

byte型からchar型への変換は、「(char)」を使う!

char型からbyte型への変換は、String.valueOf()を使って、char型をString型に変換!

その後に、getBytes()でbyte型に変換する!

byte型をArray(byte配列)で使う

ここまででも何回か出てきたように、byte型は配列で使うことも可能です。

byte型の配列は「byte配列」と言い、小さな配列となります。

配列の定義方法は、次の通りです。

byte[] 配列名 = new byte[要素数];
■記述例
public class Main{
  public static void main(String[] args){
    byte[] bAry = new byte[3];
    bAry[0] = 10;
    bAry[1] = 20;
    bAry[2] = 30;
    System.out.println(bAry[1]);
  }
}

冒頭でも紹介した記述例です。

要素として3つ作成し、それぞれに「10、20、30」と値を代入しています。

byte配列を使うと,さまざまな型の情報をメモリに連続して書き込み可能です

byte配列だと、書き込みや読み込みを行うメモリ位置を、自由に設定もできます。

このように、byte配列にもメリットがあるのです!

byte配列を初期化する

byte配列を初期化する方法は、上記で記述したように値を記述すればOKです。

値を代入しない場合は、デフォルト値である「0」が入っています。

■記述例
public class Main{
  public static void main(String[] args){
    byte[] bAry = new byte[3];
    bAry[0] = 10;
    bAry[1] = 20;
    System.out.println(bAry[2]);
  }
}

■実行結果
mbp:desktop potepan$ java Main
0

まとめ

Javaのbyte型について解説しました!

byte型は、-128〜127の範囲を扱えるデータ型です。

使い方は、他のデータ型同様に宣言して使えます。

さまざまな型への変換も可能ですので、ぜひこの記事を参考にしてみてください!

また、当サイトでは他のデータ型についても詳しく解説しています。

合わせてチェックしたい場合は、以下の記事を参考にしてみてくださいね!

【関連記事】

▶︎【Java入門】基本型(int,long,double,float…)の使い方をしっかり学ぶ

エンジニアになりたい人に選ばれるプログラミングスクール「ポテパンキャンプ 」

ポテパンキャンプは卒業生の多くがWebエンジニアとして活躍している実践型プログラミングスクールです。 1000名以上が受講しており、その多くが上場企業、ベンチャー企業のWebエンジニアとして活躍しています。

基礎的な学習だけで満足せず、実際にプログラミングを覚えて実践で使えるレベルまで学習したいという方に人気です。 プログラミングを学習し実践で使うには様々な要素が必要です。

それがマルっと詰まっているポテパンキャンプでプログラミングを学習してみませんか?

卒業生の多くがWebエンジニアとして活躍

卒業生の多くがWeb企業で活躍しております。
実践的なカリキュラムをこなしているからこそ現場でも戦力となっております。
活躍する卒業生のインタビューもございますので是非御覧ください。

経験豊富なエンジニア陣が直接指導

実践的なカリキュラムと経験豊富なエンジニアが直接指導にあたります。
有名企業のエンジニアも多数在籍し品質高いWebアプリケーションを作れるようサポートします。

満足度高くコスパの高いプログラミングスクール「ポテパンキャンプ」

運営する株式会社ポテパンは10,000人以上のエンジニアのキャリアサポートを行ってきております。
そのノウハウを活かして実践的なカリキュラムを随時アップデートしております。

代表の宮崎もプログラミングを覚えサイトを作りポテパンを創業しました。
本気でプログラミングを身につけたいという方にコスパ良く受講していただきたいと思っておりますので、気になる方はぜひスクール詳細をのぞいてくださいませ。