1
0

More than 3 years have passed since last update.

[Java基礎③]データの変換(キャストする)整数→実数 文字列→整数

Last updated at Posted at 2021-09-01

初めに

Java学習3日目です。今回は、データ型の変換について学びました。

データ型の変換をデータのキャストと言うそうです。

小数点あり→整数型

double型の3.14と定義した値を3と表示します。

コード
public class Main {
    public static void main(String[] args) {
    double number1 = 3.14;
    System.out.println((int)number1);
    }
}

整数を小数点ありに変換

コード
public class Main {
    public static void main(String[] args) {
    double number1 = 3;
    System.out.println((double)number1);
    }
}

文字列を数値に変換

コード
public class Main {
    public static void main(String[] args) {
    String text = "123";
    System.out.println(text);
       #出力結果 123
    System.out.println(Integer.parseInt(text));
       #出力結果 123
    System.out.println(Double.parseDouble(text));
       #出力結果 123.0
    }
}

「parseInt」は文字列はint型に変換してくれるメソッド。
「parseDouble」は文字列をdouble型に変換してくれるメソッド。

捕捉 データ型の自動変換

割引価格を計算してみる

以下のコードはエラーになります。
int discountPrice = price * 0.5;は、
int型で定義していますが0.5という少数をかけることにより、
double型に変換されてしまっているからです。

エラーになるコード
public class Main {
    public static void main(String[] args) {
    int price = 1800;
    System.out.println("定価" + price + "円");
    int discountPrice = price * 0.5;
    System.out.println("割引価格は" + discountPrice + "円");
    }
}

一部、以下のように修正します。

intにキャストする
int discountPrice = (int)(price * 0.5);

消費税こみの価格を出す

コード
public class Main {
    public static void main(String[] args) {
    int price = 1800;
    System.out.println("定価" + price + "円");
    int discountPrice = (int)(price * 0.5);
    System.out.println("割引価格は" + discountPrice + "円");
    int taxinPrice = (int)(discountPrice*1.1);
    System.out.println("税込価格は" + taxinPrice + "円");
    }
}

まとめ

データ型の変換をキャストすると言う

#文字列整数
System.out.println(Integer.parseInt(text));

#文字列実数
System.out.println(Double.parseDouble(text));

#intで定義してても少数点のある数字をかけるとdouble型になる
int discountPrice = price * 0.5;
double型に自動変換されてしまう

以下のようにint型にキャストする
int discountPrice = (int)(price * 0.5);

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0