0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【java】条件分岐って言ったらif文だけど、条件演算子っていうのもあるんですね

Posted at

はじめに

エンジニア未経験(34歳)の僕が、エンジニアとして転職。
その転職先でjavaシルバーの資格をとりましょう。と言われたので、その学習メモです。
(もともとjavaは学びたい言語だったのでめちゃくちゃ丁度良い)
なので、記事の内容は本当に基本のキです。
と、同時に誤りがあれば遠慮なくツッコミいただけると幸いです・・・・m(_ _)m

条件分岐って言ったらアレのことでしょ?

今まで(の僕)

僕「プログラミングをする上で、条件によって処理を分岐させたい時にどうすればいいんだろう・・・?」
もう一人の僕「決まってるぜ相棒。ここはif文switch文だぜ!」

if文の場合

もう一人の僕「リバースカード発動!『条件分岐 if文』!このカードは条件式で処理した結果がtrueかfalseとして判定される!trueの場合は条件式直後の{}の中の処理。falseの場合はelse直後の{}の中が実行される!」

if文.java
if(条件式){
   trueの処理;
}else{
   falseの処理;
}

もう一人の僕「ただし、if文は条件式のあとの{}を省略することもできる!その場合、条件式の結果がtrueだった時、そのあとに続く1行がtrueの処理として判断されるっ!!」

if文その2.java
if(条件式)
trueの処理;
trueだろうがfalseだろうが走る処理;

switch文

もう一人の僕「リバースカード発動!『条件分岐 switch文』!このカードh(略」

switch文.java
switch(){
 case 定数:
   ケースに該当した処理;
   break;
 case 定数:
   ケースに該当した処理;
   break;
}

条件演算子というものもある(ここが本題)

そんなこんなでドヤってたんですけど、条件演算子というものもあるみたいですね。
条件演算子は三つの項目から成るので、三項演算子というのに分類されるそうな。

構文

条件式 ? 式1 : 式2 ;

なんだか見慣れませんね・・・(動揺)
条件式の結果がtrueだった場合は、式1を実行。条件式の結果がfalseだった場合は、式2を実行するみたいです。

実際に使ってみる

早速使ってみました。
プログラムの内容としてはこんな感じ。

  1. コマンドラインでjavaを実行する時に引数で文字列を渡してあげる。
  2. それが"test"という文字列と一致しているかどうかを確認する(今回の本題、条件演算子:ソースコード6行目)
     一致していれば、str(インプットされた値と"test"は)という変数に"一致してますよ"の文字列を結合
     一致していなければ、str(インプットされた値と"test"は)という変数に"一致してませんよ"の文字列を結合
  3. 7行目で結合したstrをコンソールに出力
条件演算子のサンプル.java
public class Sample{
    public static void main(String[] args){
        String inputString = args[0];
        System.out.println("inputStringは" + inputString);
        String str = "インプットされた値と\"test\"は";
        str += inputString.equals("test") ? "一致してますよ" : "一致してませんよ";
        System.out.println(str);
    }
}
/*
 → コマンドラインで test を渡して実行すると「インプットされた値と"test"は一致してますよ」と表示される
*/

使い所としては、簡単な条件式に限定されますかね?
「if文を使って何行にもかけて記述するほどのものですかね?この条件。」ってレベルのものはこれで書いてあげるとソースコードが短くなってスッキリしますよね

さいごに

本当に、初歩の初歩だと思いますが、意外と初心者にとっては見慣れなかったり、そもそも引き出しが無かったりするので、まとめてみました。
何か誤りなどあれば、この記事を目にした人のためにも、僕の成長と自信のためにもご指摘いただけますと幸いです。

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?