※本サイトで紹介している商品・サービス等の外部リンクには、アフィリエイト広告が含まれる場合があります。
こんにちは。こんぶです。
今日は、「式の評価」について学んでいきましょう!
私の自己紹介等は、こちらからどうぞ。
また、Javaの学習を最初から進めていきたい方は、Java-1から見てみてくださいね。
式の評価
Javaが式に従って計算処理することを、式の評価といいます。
3つの原則に従って式を少しづつ部分的に処理していくことで、最後には式全体の計算処理が完了します。
原則1:評価結果への置換の原則
演算子は周囲のオペランドの情報を使って計算を行い、それらのオペランドを巻き込んで結果に置き換わります。
例えば、「3+7」という式を評価する場合、演算子(+)はオペランド(3と7)を使い、計算結果である「10」に置き換わります。
「3+7-2」という式を評価する場合は、段階的に評価が行われます。まず、「3+7」を「10」に置き換え、「10-2」となります。次に、「10-2」を評価し、「8」に置き換わることで、計算処理は完了します。
原則2:優先順位の原則
式に演算子が複数種類ある場合は、Javaで定められた優先順位の高い演算子から順に評価されます。
Javaの演算子には、15段階の優先順位が定められています。(覚えておくべき演算子の優先順位については、次回以降にも説明していきます)
例えば、優先順位が5番目の演算子グループに属している「+」演算子よりも、優先順位が4番目の演算子グループに属している「/」演算子の方が先に評価されることになります。(「/」は割り算の演算子です)
評価順位を引き上げたいときには、「丸カッコ()」を使用することもできます。
例えば、「4+6/2」という式を評価する場合は、まず「6/2」を評価し、「3」に置き換え、「4+3」となります。次に、「4+3」を評価し、「7」に置き換わります。
「4+6」を先に計算したい場合は、「丸カッコ()」を使用して評価順位を引き上げる事もできます。その場合は「(4+6)/2」とすることで、まず「4+6」を評価して「10」に置き換え、「10/2」を評価し「5」に置き換わるという流れになります。
原則3:結合規則の原則
式の中に同じ優先順位グループに属する演算子が複数ある場合、演算子ごとに決められた方向から順に評価されます。
すべての演算子には「左から評価」するか「右から評価」するかという「方向」が結合規則として決められています。
例えば、「+」演算子は評価の方向が「左から右」なので、「3+7+2」という式を評価する場合は、まず「3+7」を評価して「10」になり、「10+2」を評価して「12」になります。
「=」演算子は評価の方向が「右から左」なので、「a=b=3」という式を評価する場合は、まず「b=3」を評価してbに3が代入され「3」に置き換わり、「a=3」を評価して「aに3が代入」されます。
各演算子の評価の方向については、次回以降に詳しく説明していきますね。
今回のまとめ
★演算子は周囲のオペランドの情報を使って計算を行い、それらのオペランドを巻き込んで結果に置き換わる
★式に演算子が複数種類ある場合は、Javaで定められた優先順位の高い演算子から順に評価される
★Javaの演算子には、15段階の優先順位が定められている
★評価順位を引き上げたいときには、「丸カッコ()」を使用する
★式の中に同じ優先順位グループに属する演算子が複数ある場合、演算子ごとに決められた方向から順に評価される
★すべての演算子には「左から評価」するか「右から評価」するかという「方向」が決まっている
・式の評価:Javaが式に従って計算処理すること
次回は、演算子について詳しく説明していこうと思います。
今回の内容のチャレンジ問題はこちらです→チャレンジ問題【Java-8】
次の内容に進む方はこちらです→【Java-9】計算の文④演算子1
それでは、こんぶはじゃ~
コメント