LoginSignup
1
1

More than 3 years have passed since last update.

【Java】初めてのJava学習:その1 Javaってなんぞ?から変数の基礎まで(基礎・コード)

Last updated at Posted at 2020-03-16

最初に

自身で学習してきた内容を書き出していきます。
基本的には自分自身でわかるような内容になりますので、ご容赦ください。
また、誤っている点がありましたら、コメントにてご指摘ください。

(要確認)マークがあるものは、「実行前に必ずググる」べき内容。

⚠️今回はインプット寄りの投稿です⚠️

今回は、外部サイト「Progate」にて学習した内容を吐き出します。

index

  • Javaってなんぞ
  • 試しにコードを書いてみた
  • データ型
  • Javaでの変数

Javaってなんぞ

世界中にたくさんの開発者がいる有名な言語のなかの一つ!
大規模システム、Webアプリケーション、スマートフォンアプリなど、Javaはあなたの周りの様々な場所で使われている。

そして・・・
⚠️JavaとJavaScriptは全くの無関係である⚠️

試しにコードを書いてみた

やりたいこと:「文字列」を、コンソールに出力させたい。

Main.java
class Main { // ここにクラスを記述
  public static void main(String[] args) { // ここにメゾットを記述
    System.out.println("Hello,World!"); // ここに処理を記述
  }
}
  • 文字列は「"(ダブルクォーテーション)」で囲んであげる。
  • 「;(セミコロン)」は忘れがちになる!
  • System.out.println()というのは、「()の中身を出力(表示)せよ」という「命令」
    • print「l」nは小文字のエルだぞ
  • クラス>メゾット>処理の構成で記述するようだ

文字列の連結

やりたいこと:「文字列」を、連結させてコンソールに出力させたい。

Main.java
class Main {
  public static void main(String[] args) {
    System.out.println("Hello" + "World!");

    System.out.println("5" + "3"); //結果:53
  }
}
  • 後述の「数値」と「文字列」の違いをイメージすると良い!

数値(四則演算処理)

やりたいこと:「数値」を、コンソールに出力させたい。

Main.java
class Main { // ここにクラスを記述
  public static void main(String[] args) { // ここにメゾットを記述
    System.out.println(3); // ここに処理を記述
    System.out.println(1 + 2);
    System.out.println(5 - 2);
  }
}
  • 数値はそのままでOK。
  • 四則演算もできちゃう!
  • 今回の記述だと、全て「3」だが処理内容が違うぞ。

やりたいこと:いろんな計算結果を出力させたい。

Main.java
class Main { // ここにクラスを記述
  public static void main(String[] args) { // ここにメゾットを記述
    System.out.println(5 * 2); // 結果:10
    System.out.println(6 / 2); // 結果:3
    System.out.println(8 % 5); // 結果:3
  }
}
  • 「*」は掛け算、「/」は割り算
  • 「%」は割り算の余りを計算できるぞ!(今回の場合は「1余り3」なので出力は「3」となる)
  • 四則演算処理を見やすくする為に、半角スペースを入れると良き♪

文字列と数値の違いがわかる例

System.out.println(3); // 結果:3
System.out.println("1 + 2"); // 結果:1 + 2

データ型

String型とint(integer)型

Ruby on Railsで開発をしていた時にも、テーブル設計時にお世話になりました、String型とint(integer)型についてです。

String型 int型
"Hello,World"(文字列) 3(整数)
"イロハ" 1995
  • String型
    • 文字の並び
  • int(integer)型
    • 整数
    • (iは小文字)

後日、様々なデータ型をまとめた記事を投稿予定です。

Javaでの変数

データのやりとりをやりやすくするための、定義できる書類BOXや名札みたいな感じ。
投稿者の過去記事に、rubyでの簡単な説明があるので、よければ読んでみてね!
Rubyについて(基礎)

やりたいこと:Javaで変数を定義させ、定義した変数から値を取り出したい

①変数にいれる値のデータ型を指定
②変数の名前を指定
③値を代入する

スクリーンショット 2020-03-16 17.28.14.png

「=」は「等しい」を意味するのではない!

あとは変数から値を取り出せばOK!!

Main.java
class Main {
  public static void main(String[] args) {

    int a; // 整数として「a」の名札がついた箱を用意
    a = 10; // その箱に「10」を代入
    System.out.println(a); // 結果:10

    String b; // 整数として「b」の名札がついた箱を用意
    b = "hello,world!" // その箱に「"hello,world!"」を代入
    System.out.println(b); // 結果:"hello,world!"

  }
}

やりたいこと:変数の初期化をしてみる

変数の定義と代入を一行で表現できる!
上記のコードにある変数を初期化してみる。

Main.java
class Main {
  public static void main(String[] args) {

    int a = 10; // 変数の初期化
    System.out.println(a); // 結果:10

    String b = "hello,world!" // 変数の初期化
    System.out.println(b); // 結果:"hello,world!"

  }
}

✨見ていて気持ちいいコードになった✨

やりたいこと:「int型の計算」と「String型の連結」

Main.java
class Main {
  public static void main(String[] args) {

    // 変数を用いたint型の計算
    int hoge1 = 100;
    System.out.println(hoge1 + 200); // 結果:300

    int hoge2 = 10;
    System.out.println(hoge1 + hoge2); // 結果:110


    // 変数を用いたString型の連結
    String hello = "こんにちは!";
    System.out.println(hello + "hoge1"); // 結果:こんにちは!hoge1

    String name = "hoge2";
    System.out.println(hello + name); // 結果:こんにちは!hoge2

  }
}

変数の上書きと注意点

中に入っている値を更新すること(上書き)も可能。
ただし、注意として、「同じ処理内で同一名の変数を定義できない」

やりたいこと:変数の上書きとエラーの出る記述

String型の変数を呼び出す時も、変数名に「"」は記述しない。

Main.java
class Main {
  public static void main(String[] args) {

    // 変数を用いたint型の計算
    int hoge1 = 100;
    System.out.println(hoge1 + 200); // 結果:300

    hoge1 = 400; // 上書き
    System.out.println(hoge1 + 200); // 結果:600

    int hoge1 = 700; //結果を900にしたいが「int」を記述
    System.out.println(hoge1 + 200); // 結果:同じ処理内で同一名の変数を定義しているのでエラーが出る

  }
}

ここで地味なポイント
コードは基本的に上から処理されていく。

Main.java
class Main {
  public static void main(String[] args) {

    int number = 10;
    String text = "Ruby";
    System.out.println(number); // ここで一度「10」が出力される
    System.out.println(text); // ここで一度「Ruby」が出力される

    number = 5;
    text = "Java";
    System.out.println(number); // 上書きされた「5」が出力される
    System.out.println(text); // 上書きされた「Java」が出力される

  }
}

結果

10
Ruby
5
Java

自己代入

やりたいこと:変数xに10が入っている時、40を足して、変数xを上書きしたい

代入の「=」は等しいわけではないことがPOINT!

Main.java
class Main {
  public static void main(String[] args) {

    int number = 10;
    System.out.println(number); // 結果:10

    number = number + 40; // number = 10に40を足して、numberを上書き
    System.out.println(number); // 結果:50

  }
}

上記の記述を省略してみる。

Main.java
class Main {
  public static void main(String[] args) {

    int number = 10;
    System.out.println(number); // 結果:10

    number += 40; // 省略記述
    System.out.println(number); // 結果:50

  }
}

やりたいこと:自己代入の省略記述

int number = 10;

number += 40;
number -= 40;
number *= 40;
number /= 40;
number %= 40;

//変数に「1」を足す、もしくは「1」を引く場合はさらに省略できる
number++;
number--;

変数の命名規則(Javaの場合)

変数は自由に命名することができる・・・が!!!
一定のルールと理由がある。

GOOD👍

理由
date 英単語を用いている
userName 2語以上の場合は大文字で区切る(キャメルケース)

BAD😭

理由
1name 数字開始はエラーが出るぞ
user_name アンダーバーは望ましくない(スネークケース)
ohisama ローマ字もわかりにくいので良くない
名前 日本語はよろしくない(プログラミングでは日本語良くないぞ...)

誰が見てもわかりやすく、短い変数名を定義してあげよう!!
命名に悩んだら下記参照。

codic

小数点について

やりたいこと:小数点を用いて計算をしてみたい

小数点のデータ型は「double型」。

Main.java
class Main {
  public static void main(String[] args) {

    double number1 = 10.0;
    double number2 = 3.3;

    System.out.println(number1 + number2); // 結果:13.3
    System.out.println(number1 - number2); // 結果:6.7

  }
}

やりたいこと:自動型変換を用いて整数と小数点で計算したい

Main.java
class Main {
  public static void main(String[] args) {

    System.out.println(5 / 2.0); // 結果:2.5

    //因みに
    System.out.println(5 / 2); // 結果:2
    System.out.println(5.0 / 2.0); // 結果:2.5

  }
}
  • 「+」などの操作は、本来であれば同じデータ型同士でないとできない。
  • 「自動型変換」で対応してみる。(手動もあるようだ)
  • 因みに「String型」と「int型」で「+」すると、String型で出力される。
    • このことから、値をわかりやすく表現できるデータ型に自動変換してくれていることがわかる!!
    • 整数の「5」は、文字列でも"5"の表現ができるし、小数点でも5.0の表現ができるから。
  • また、int型の計算結果とdouble型の計算結果で変化することがあるので注意した方が良いぞ。

やりたいこと:強制型変換を用いて整数と小数点で計算したい

Main.java
class Main {
  public static void main(String[] args) {

    int x = 13;
    int y = 4;
    System.out.println(x / y); // 結果:3(3.25ではない)

    System.out.println((double)x / y); // 結果:3.25

  }
}
  • 変数xのint型を「double型」に強制変換させたので、自動型変換が発火して、変数yも「double型」になったぞ!!

追加あれば、どんどん更新していきます。

駆け出しとして頑張ります。

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