0
0

More than 3 years have passed since last update.

【Java ~ 今迄の復習をしながら自己紹介プログラムの作成) ~ 】勉強メモ(7)

Last updated at Posted at 2021-01-04

Java学習中。
今迄の勉強した事の総復習。
ほぼ自分の勉強メモです。
過度な期待はしないでください。

過去投稿記事

【Java~変数の定義、型変換について~】勉強メモ
【Java ~真偽値~】勉強メモ(2)
【Java ~条件分岐・繰り返し処理~】勉強メモ(3)
【Java ~配列~】勉強メモ(4)
【Java ~メソッド~】勉強メモ(5)
【Java ~ クラス ~ 】勉強メモ(6)

自己紹介プログラムの作成

  • シンプルに文字列を表示
class Main {
  public static void main(String[] args) {
    System.out.println("名前はKate Jonesです");
  }
}

・System.out.println( ) と書く事で( )の中身を出力。
・文字列はダブルクォーテーション(")で囲む。

  • コンソールから入力の受け取り
import java.util.Scanner;

class Main {
  public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);

    System.out.print("名前: ");
    String firstName = scanner.next( );

    System.out.print("名字: ");
    String lastName = scanner.next( );

    System.out.println("名前は"+ lastName + firstName +"です");
  }
}

・コンソールへの入力を受け取るにはScannerという外部ライブラリをインポートする。
 また、Scannerは「import java.util.Scanner」で読み込みます。
 ※記載する場所に注意。最後のセミコロンも忘れがち。
・Scannerを使用するには、先ずScannerを初期化する。
 new Scanner(System.in)で初期化します。
・初期化したものを変数に入れる。
 変数を定義は、①変数にいれる値のデータ型を指定する、②変数の名前を決める
 データの型は、Scanner
 変数名は、分かりやすい名前で付ける。今回は、scanner
・コンソールに入力された文字列を受け取る。
 scanner.next( )で、入力された文字列を受け取ります。

  • 条件分岐とコンソールから数値の受け取り
import java.util.Scanner;

class Main {
  public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);

    System.out.print("名前: ");
    String firstName = scanner.next( );

    System.out.print("名字: ");
    String lastName = scanner.next( );

    System.out.println("年齢: ");
    int age = scanner.nextInt();

    System.out.println("名前は"+ lastName + firstName +"です");
    System.out.println("年齢は"+ age  +"歳です");
    if(age >= 20){
      System.out.print("成年者です");
    }else{
      System.out.print("未成年者です");
    }
  }
}

・コンソールに入力された数値を受け取る
 scanner.nextInt( )で、入力された数値を受け取ります。
 その他のScannerの使い方は、文字列を受け取る方法と同様。

・条件分岐の書き方は、

if(条件式){
  //処理内容①;
}else{
  //処理内容②;
}

条件式がtrueなら{ }内の処理内容①を行い、反対に条件式がfalseなら処理内容②を行う。

  • メソッド
import java.util.Scanner;

class Main {
  public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);

    System.out.print("名前: ");
    String firstName = scanner.next( );

    System.out.print("名字: ");
    String lastName = scanner.next( );

    System.out.print("年齢: ");
    int age = scanner.nextInt();

    System.out.print("身長(m): ");
    double height = scanner.nextDouble();

    System.out.print("体重(kg): ");
    double weight = scanner.nextDouble();

    printData(firstName, lastName, age, height, weight);

  }
  public static void printData(String firstName, String lastName, int age, double height, double weight){
    System.out.println("名前は"+ fullName(firstName, lastName) +"です");
    System.out.println("年齢は"+ age  +"歳です");
    if(age >= 20){
      System.out.println("成年者です");
    }else{
      System.out.println("未成年者です");
    }
    System.out.println("身長は"+ height  +"mです");
    System.out.println("体重は"+ weight  +"kgです");
  }
  public static String fullName(String firstName, String lastName) {
    return firstName + " " + lastName;
  }
}

・コンソールに入力された小数を受け取る
 少数値の読み込み ⇨ double d = scanner.nextDouble();
 scanner.nextDouble()で、入力された小数を受け取る。
 その他のScannerの使い方は、文字列・数値を受け取る方法と同様。
 doubleは、小数を表すデータ型。

・メソッドの定義と呼び出し
 メソッドの定義は ⇨ public static void メソッド名( ){ 実行する処理 }
 メソッドを呼び出すには ⇨ メソッド名( );

・引数を用いた、メソッドの定義と呼び出し
 メソッドの定義は ⇨ public static void メソッド名(データ型 変数名){ 実行する処理 }
 メソッドを呼び出すには ⇨ メソッド名(引数);
 また、複数の引数を受け取るためには、コンマ(,)で区切って定義する。

・戻り値のあるメソッド
 メソッドの定義は ⇨ public static 戻り値のデータ型 メソッド名(引数){ return 戻り値 }

  • クラス
Main.java
import java.util.Scanner;

class Main {
  public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);

    System.out.print("名前: ");
    String firstName = scanner.next( );

    System.out.print("名字: ");
    String lastName = scanner.next( );

    System.out.print("年齢: ");
    int age = scanner.nextInt();

    System.out.print("身長(m): ");
    double height = scanner.nextDouble();

    System.out.print("体重(kg): ");
    double weight = scanner.nextDouble();
    // 他クラスのメソッドを呼び出す
    Person.printData(firstName, lastName, age, height, weight);
  }
}
Another.java
// 外部ライブラリをインポート
import java.lang.Math;

class Another{
  public static void printData(String firstName, String lastName, int age, double height, double weight){
    System.out.println("名前は"+ fullName(firstName, lastName) +"です");
    System.out.println("年齢は"+ age  +"歳です");
    if(age >= 20){
      System.out.println("成年者です");
    }else{
      System.out.println("未成年者です");
    }
    System.out.println("身長は"+ height  +"mです");
    System.out.println("体重は"+ weight  +"kgです");
    // bmiメソッドを呼び出し、変数に代入
    double bmi = bmi(height, weight);
    System.out.println("BMIは"+ Math.round(bmi) +"です");
  }
  public static String fullName(String firstName, String lastName) {
    return firstName + " " + lastName;
  }
  // bmiメソッドを定義
  public static double bmi(double height, double weight) {
    return weight/height/height;
  }
}

・クラス(ライブラリ)を読み込むみ
 class定義より上で「import java.lang.クラス名」と記載。

・クラスの定義
 class クラス名 {ここにメソッドを定義}
 ファイル名は、「クラス名.java」としなければならない。

・他クラスのメソッドを呼び出す
 クラス名.メソッド名()とすることで、他のクラスのメソッドを呼び出すことができる。

・四捨五入をするためのメソッド
 Math.round(数字);

  • 真偽値の戻り値
Another.java
import java.lang.Math;

class Another{
  public static void printData(String firstName, String lastName, int age, double height, double weight){
    System.out.println("名前は"+ fullName(firstName, lastName) +"です");
    System.out.println("年齢は"+ age  +"歳です");
    if(age >= 20){
      System.out.println("成年者です");
    }else{
      System.out.println("未成年者です");
    }
    System.out.println("身長は"+ height  +"mです");
    System.out.println("体重は"+ weight  +"kgです");
    double bmi = bmi(height, weight);
    System.out.println("BMIは"+ Math.round(bmi) +"です");
    // 健康かどうかを判定する条件分岐を作成
    if(isHealthy(bmi)){
      System.out.println("健康です");
    }else{
      System.out.println("健康ではありません");
    }
  }
  public static String fullName(String firstName, String lastName) {
    return firstName + " " + lastName;
  }
  public static double bmi(double height, double weight) {
    return weight/height/height;
  }
  // isHealthyメソッドを定義
  public static boolean isHealthy(double bmi) {
    return bmi>=18.5 && bmi < 25;
  }
}

・真偽値のデータ型は、boolean型
・論理演算子
 18.5以上かつ25.0未満の「かつ」は、&&で表現し、「条件1 && 条件2」は、
 「条件1がtrueかつ条件2もtrue」であれば結果もtrueになり、どちらか一方でもfalseであれ
 ば結果はfalseになります。

 ちなみに、「または」は、| |で表現し、「条件1 | | 条件2」は、
 「条件1または条件2のどちらか一方でもtrue」であれば結果はtrueになります。

0
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
0
0