はじめに
今回は、式と演算子についてです。
Java初心者の記事なので、基礎中の基礎のことを書いていきます
独学でやってるので、「これはJavaやっていくにあたって役に立つ知識だぞ!!」というのがあれば、コメントして頂けるととても嬉しいです !!
式の構成要素
式「a = b + 3」を分解してみると、変数「a」「b」や値の「3」、計算記号「+」「=」に分けることができます。
この「a」「b」「5」をオペランド、「+」「-」演算子と呼び、すべての式はこの2つの要素だけで構成されています。
オペランドの中でも数字の「3」や文字列「Muscle World」などといった、ソースコードに記述されている値のことをリテラルと呼びます。
演算子
Javaには多くの演算子がありますが、その中からよく使うものを紹介したいと思います。
【代表的な算術演算子】
+ 足し算 2 + 8 =10
- 引き算 10 - 2 = 8
* 掛け算 2 x 5 = 10
/ 割り算 3.2 / 2 →1.6 9/2 → 4
% 割り算のあまり 9 % 2 → 1
【代入演算子】:右から左に代入する演算子
= 右辺を左辺に代入 a = 10 → a
+= 左辺と右辺を足してから左辺に代入
-= 左辺から右辺を引き算し、左辺に代入
*= 左辺と右辺を掛け算し、左に代入
/= 左辺と右辺を割り算し、左に代入
%= 左辺と右辺を割り算し、そのあまりを左に代入
+= 左辺後ろに右を連結して代入 a += "腹筋" → a //(a =a+ "腹筋")と同じ
たとえば・・・
変数aの内容を5増やしたい場合、「a += 5」「a = a +5」の2種類の書き方がある !
【インクリメントとデクリメント演算子】:変数の内容を1だけ増やしたり減らしたりする場合
++ 値を1増やす
-- 値を1減らす
例
1 public class MuscleWorld{
2 public static void main(String[] args){
3 int a = 10;
4 a++; /*aの内容が1増える*/
5 System.out.println(a);
6 }
7 }
命令実行の文
命令実行の文とはJavaが持っている様々な命令を呼び出すための文です。
最も代表的なのは、
これまでに数回出現してきた、System.out.println
です
【命令実行の文】
呼び出す命令の名前(引数);
引数とは、メソッドに渡すデータのことです。
();の中にいれるのは、引数やパラメーターと呼ばれるもの。
今回は6つの命令文を紹介します
【改行せずに画面に文字を入力する】
System.out.print(1);
/*画面に1を表示するが、改行せずに画面に表示されます*/
1 public class Muscle{
2 public static void main(String[] args){
3 String niku = "腹斜筋";
4 System.out.print("私のチャームポイントは");
5 System.out.print(niku);
6 System.out.print("です!");
7 }
8 }
表示結果
私のチャームポイントは腹斜筋です!
【2つの値を比較して大きいほうの数字を代入する命令】
int p( = Math.max(1,2);
/*1or2は比較したい値や式。大きいほうの値がpに代入される。変数pはp以外でもOK*/
1 public class Muscle{
2 public static void main(String[] args){
3 int a = 10;
4 int b = 5;
5 int p = Math.max(a,b);
6 System.out.println("比較:"+a+"と"+b+"とで大きいほうは"+p);
7 }
8 }
表示結果
比較:10と5で大きいほうは10
【文字列を数字に変換する命令】
int a = Integer.parseInt(1);
/*1は数字として解釈させたい文字列("10")など*/
1 public class Muscle{
2 public static void main(String[] args){
3 String muscle = "15";
4 int a = Integer.parseInt(muscle);
5 System.out.println("腹筋の回数は"+(muscle+100)+"回ですよ❤︎!!");
6 }
7 }
表示結果
筋トレする回数は115回ですよ❤︎!!
これはどーゆうことかというと、文字列の"15"を数字の15に変換して計算していることです。
【乱数を発生させる】
int a = new java.util.Random().nextInt(1);
・1は発生させる乱数の値
・1に1以上の整数を指定してこの命令を呼び出すと、0以上かつ1で指定した数字未満のランダムな整数がaに代入される
例
1に100を代入すると、aには0〜99のいずれかが代入される
1 public class Muscle{
2 public static void main(String[] args){
3 int a = new java.util.Random().nextInt(100);
4 System.out.println("今日の腕立ての回数は"+a+"です!!");
5 }
6 }
今日の腕立ての回数は87回です!!
87回のところは、毎回ランダムに表示されます。
【キーボードから1行の文字列の入力を受け付ける命令】
String input = new java.util.Scanner(System.in).nextLine();
【キーボードから1つの整数の入力を受け付ける命令】
int input = new java.util.Scanner(System.in).nextIn();
・これらの文を実行すると、プログラムは一時停止となり、ユーザーがキーボードから文字入力できる
・入力後、入力内容が変数inputに代入される
・nextLine()は文字列を受け取る
・nextInt()は数字の入力を受け取る
1 public class Muscle{
2 public static void main(String[] args){
3 System.out.println("名前を入力してください!");
4 String name = new java.util.Scanner(System.in).nextLine();
5 System.out.println("年齢を入力してください!!");
6 int age = new java.util.Scanner(System.in).nextInt();
7 System.outprintln("Welcome!"+age+"歳の"+name+"さん!");
8 }
9 }
表示結果
名前を入力してください!
<Amippy>
年齢を入力してください!!
<21>
Welcome!<Amippy>歳の<21>さん!
※<>はキーボードから入力したものです。