Java言語規定にもあるプログラムの書式なのですが一つ解らないところがあるので質問させてください。
http://www.y-adagio.com/public/standards/tr_java …
のソース内に
System.out.print(i == 0 ? args[i] : " " + args[i]);
というのがありますが
>i == 0 ? args[i] :
この使用法が全くわかりません。
プログラミングはN88-BASICからほとんどの言語(COBOLを除く)を使用してきましたし、Java自体プログラムを組んだ事があるのですが、はじめてみる構文です。
この構文を説明しているサイトもしくは使用方法、どのような時に使用するのが良いか(出来れば例が欲しいです。)をご存知の方。回答よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

三項演算子ですね。


条件式 ? 式1 : 式2
という式で、条件式がtrueならば式1が、falseならば式2が
評価されるというものです。元々C言語に特有の記述方法で、他の古い
プログラム言語には見られなかったものですが、Cの系統を引くC++
やJavaには取り入れられています。
    • good
    • 0
この回答へのお礼

三項演算子ですね、おかげですっきりしました。
普段BASICやFORTRAN等の知識から迷わずに
if(){}else{}を使用していました…

そういえばFORTRANでこれに似た書式があったような…
IF(条件式)正の時の処理,0の時の処理,負の時の処理
…違う気がする…

今まで参考書を見ても載っていなかったんですよね…
(読み飛ばしてしまっただけのような気もしていますが…)
マイナーな使用方法なのかな…

回答ありがとうございました。

お礼日時:2002/03/18 17:13

i==0がtrueならargs[i]、falseなら" " + args[i]という意味です。


同じ文法はCにもあります。
コマンドラインを組み立てる(引数を繋げて行く)にあたり、
2つ目以後(i==0でない場合)は空白を挟みたい、という主旨だと
思います。
    • good
    • 0
この回答へのお礼

早速の回答ありがとうございます。
区切り方を間違えていたようですね…
納得しました…
ありがとうございます。

お礼日時:2002/03/18 17:03

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング

おすすめ情報