2015/11/10 時点での本文

1. 1. Decisions
●Learn
So far, we've explored primitive data types and Java 
syntax. As we've seen, Java programs follow the 
instructions we provide them, such as printing values to 
the console.
前回は、
 ・プリミティブ・タイプ*1 の データ/値
 ・基本的な、文の書き方
   - 「。」 や「.」 は、Java では、「;」 であること
   - 変数 に データ型 を指定して、保存すること
     int x = 123; など
   - ホワイトスペースについて
   - コメントの書き方
を、使って、Java に、慣れること、かつ、
大事な基本を、学びました。
その時、
 System.out.println('c');
などの命令コードが、一番右のウィンドウ(コンソール*2といいます)に、
結果を表示するのを見て分かるように、
Javaプログラムは、私たちが書いたコードにしたがって、
アクションします。
(この時は、コンソールに、c が、表示されますね)
*1
 Javaの場合、データには、
  ・プリミティブタイプ
  ・オブジェクトタイプ(後述)
 があります。
 オブジェクトは、プリミティブ(これ以上分解できない材料)や、
 違うオブジェクトを、使って、作られた、データタイプです。
*2
 コンソールとは、文字だけでアクションするプログラムウィンドウです。
 今のところは、こんな理解で十分だと思われます。
 ちなみに、文字だけのプログラムは、CUI、
 ボタンや絵や図形を使ったプログラムは、GUI と言います。

We can also write Java programs that can follow different 
sets of instructions depending on the values that we 
provide to them. This is called control flow. In this lesson, 
we'll learn how to use control flow in our programs.
前回、学んだ、コンソールにプリントアウトする指示*、以外にも、
いろんな、要求/命令/アクション を、Java に、指示することが出来ます。
そして、Javaプログラムは、私たちが、与えたデータの値に応じて、
結果を返してくれます。
このことを、
 プログラムの流れをコントロールする/制御フロー(control flow)
と言います。
このチャプター(第2章/4-2)では、
さまざまな、制御フロー を使って、Javaプログラムに、いろんなアクションを、
させてみましょう。
*コンソールに、プリントアウトするには、定番の命令文:
 System.out.println(プリントアウトするデータ);
を、使います。
これの意味は、今の段階では、難しすぎます。
しかし、かと言って、
これを使わずして、Javaプログラムを、エンジョイできません。
と言うことで、たとえば、100回(10回でもいいか?)
 System.out.println('p');
を、書いて、覚えてしまいましょう。
(もっとも、一から自分でやる方法を、覚えて、
 サンプルコードを自分で書けるか試して、
 覚えていけば、100回なんて、いやでもタイプするでしょう。
 また、本当にマスターしたいと思っているなら、
 ググって、調べるべきでしょう。
 IDEについては、合う合わないの問題かと?
 Codecademyは、学ぶには、最適ですが、
 練習には、向いていないからです。
 また、練習なしで、マスターするのは、普通は不可能です。)
読み方は:
 System(システム).out(アウト).println(プリントライン)('p');
  / ln(printlnの)は、line(1行)の、ことです。
  / 'p' は、charタイプのデータ でしたね。
   / 'p' のところは、何でも、好きなデータでOKです。
  Instructions
1.
Take a look at the code in the editor. If it looks confusing to 
you right now, don't worry! After this lesson, you'll be able 
to read and write Java programs that use control flow.
	・・・
Click Run to run the code.
右のウィンドウに組み込まれている テキストエディター を、見てください。
今のところ???だと思いますが、心配無用です!
このチャプター終了後には、「制御フローのコード」を、
読めて書けるようになります。
	・・・
ここでは、エディタの左下のRunを、クリックして、
何かが、プリントアウトされるのを、確認するだけで、OKです。




[Next]
2. Boolean Operators: &&
●Learn
Let's look at a set of operators that let us use control flow in 
our programs. These operators are called Boolean 
operators.
	・・・
There are three Boolean operators that we will explore. 
Let's start with the first one: and.
	・・・
1.
The and operator is represented in Java by &&.
2.
It returns a boolean value of true only when the 
expressions on both sides of && are true.
では、Javaプログラムの中で、私たちが使う、制御フロー のための、
演算子 を、見ていきましょう。
	・・・
まずは、3つの
 ブーリアン演算子(Boolean operator)
について、学んでいきます。
まずは、
 論理積(両立すること)の、演算子*
から見ていきましょう。
	・・・
1.
両立 を、調べる演算子は、
 &&(and and)
のように書きます。
2.
&& は、両側の オペランド が、共に、true(booleanタイプ値)
の時だけ、その式の結果が、true になります。
* &&
Short-circuit AND(AND演算子の短絡評価)
という言い方も、覚えておくと、調べるときに役に立つかもしれません。

For example, the code below shows one outcome of the 
Boolean operator &&:
 / the code below:
  the code which is below(副詞だがCとして)
  the code mentioned below
    / - helped by MoriTaturo's EGA -
 // The following expression uses the "and" Boolean 
 operator
 System.out.println(true && true);
 // prints true
例えば、下記のコードは、&&ブーリアン演算子 を、使った場合の、
ひとつの例です。
 System.out.println(true && true);
そして、true を、コンソールにプリントします。

The code below shows the rest of the possible outcomes of 
the Boolean operators &&:
 // The following expressions use the "and" Boolean 
 operator
 System.out.println(false && false); // prints false
 System.out.println(false && true); // prints false
 System.out.println(true && false); // prints false
また、下記のコードは、&&ブーリアン演算子 を使った、
残りのあり得るパターン を、示しています。
 System.out.println(false && false); 
  // false を、コンソールにプリント
 System.out.println(false && true); 
  // false を、コンソールにプリント
 System.out.println(true && false); 
  // false を、コンソールにプリント

We can also use the Boolean operator && with 
Boolean expressions such as the following:
 System.out.println(2 < 3 && 4 < 5);
The example above will print out true because the 
statements "2 is less than 3" and "4 is less than 5" are both 
true.
また、&&ブーリアン演算子 を、ブーリアン式*
 と、組み合わせて、
使うこともできます。
 System.out.println(2 < 3 && 4 < 5);
この例では、true を、コンソールにプリントアウトします。
なぜなら、「2 < 3…2は3より小さい」、
「4 < 5…4は5より小さい」、、は、共に、正しい(true)ですから。
*式 について:
式と文の違いは、例えば、
 5+3は、8です。
は、文ですが、
 5+3
は、 だと言うようなものです。
お分かりですか?
私には、言葉でどう定義したらいいのかは、分かりませんが。。
ほかの例で言うと、
 int wa = 1+4;
は、文ですが、
 1+4
は、式(expression) だと言うことです。
いったい何が言いたいのか?
言いたいのは、参考書/ドキュメンテーション を読むときに、
知っておかないと、と、言うことです。Instructions
1.
Use the && operator and any two Boolean expressions of 
your choice between the parentheses of 
System.out.println(); in order to print out a value of true or 
false to the console.
&&ブーリアン演算子 を用いて、2つのブーリアンを、比べましょう。
そして、その結果を、一番右側のウィンドウ/コンソールウィンドウ に、
プリントアウトするために、
 System.out.println();
を、使いましょう。
つまり、
 ()
の中に、2つのブーリアン式 を オペランド とする &&演算子 を使った、
「式(式の組み合わせになっている)」 を、書けばいいのです。
プリントアウトされる結果は、true または、false になりますね。
* ブーリアン式 とは、
「比較演算子」、「等価演算子」 を、使った式です。
値は、指定はありませんので、好きな数値などを使いましょう。




[Next]
3. Data Types II: boolean
●Learn
Great! The second Boolean operator that we will explore is 
called or.
1.
The or operator is represented in Java by ||.
2.
It returns a Boolean value of true when at least one 
expression on either side of || is true.
Great!、2つ目の、
	ブーリアン演算子
は、
	論理和(片立/片方だけ成り立つ)を調べるための
演算子です。*
1.
論理和を調べるための演算子は、|| で、書き表されます。
2.
|| の両側の式のうち、少なくとも、どちらか一方が、true であれば、
全体で、true になります。
* ||
OR演算子の短絡評価(Short-circuit OR)
という言い方も、覚えておくと、調べるときに役に立つかもしれませんね。
この言葉を、暗記したとしても、余りメリットはないかもしれません。
ただ、調べるために便利だと言うだけです。
専門用語の場合、的を得た言い方なのか、単に識別するために
使われている用語なのかで、覚えるかどうかの価値が決まります。
話がそれますが、英語の文法用語などは、例えば、
「形容詞的動詞形」と言えばいいのに、「分詞」などといいますね。
まあ、でも、英語の場合は、変な言葉だと思っても、
まず、覚えておいたほうが、役に立ちます。

The code below shows all the outcomes of the Boolean 
operator ||:
 //The "or" Boolean operator:
 System.out.println(false || false); // prints false
 System.out.println(false || true); // prints true
 System.out.println(true || false); // prints true
 System.out.println(true || true); // prints true 
下記のコードでは、||ブーリアン演算子 を、使った、
ありえるパターンを、すべて、示しています。
 System.out.println(false || false);
  // false をプリントします
 System.out.println(false || true);
  // true をプリントします
 System.out.println(true || false);
  // true をプリントします
 System.out.println(true || true);
  // true をプリントします  

We can also use the Boolean operator || with Boolean 
expressions such as the following:
 System.out.println(2 > 1 || 3 > 4);
The example above will print out true because at least one 
statement — "2 is greater than 1" — is true even though 
the other statement — "3 is greater than 4" — is false.
また、&&演算子 の時と同じように、
ブーリアン式 を、オペランド として、||演算子 を使うことも出来ます。
 System.out.println(2 > 1 || 3 > 4);
この例では、true になります。
なぜなら、少なくともひとつの式が、true であるからです。
「2 > 1」 は、正しい/true です。
ですから、もう一方の、「3 > 4」 が、間違い/false であっても、
true になるのです。 Instructions
1.
Use the || operator and any two Boolean expressions of 
your choice between the parentheses of 
System.out.println(); in order to print out a value of true or 
false to the console.
何でもいいです、2つの ブーリアン式 を作って、
||演算子 の、オペランドにしましょう。
それを、
 System.out.prinltn();
 の
 ()
に、入れて、ブーリアン値(true または false) を、返すことを、確認しましょう。




[Next]
4. Boolean Operators: !
●Learn
Fantastic! The final Boolean operator we will explore is 
called not.
1.
The not operator is represented in Java by !.
2.
It will return the opposite of the expression immediately 
after it. It will return false if the expression is true, and true 
if the expression is false.
Fantastic!、最後3つ目の、ブーリアン演算子 は、
 NOT演算子(論理否定/否定)
です。
1.
NOT演算子 は、Java では、! です。
2.
! は、直後にある式 の、反対のブーリアン値 を、返します。
つまり、trueの 式/値 の前に、! があれば、false になり、
falseの 式/値 の前に、! があれば、true になります。

The code below shows all the outcomes of the Boolean 
operator !:
 //The "not" Boolean operator:
 System.out.println(!false); // prints true
 System.out.println(!true); // prints false
下のコードは、すべてのありえるパターンを示しています。
 System.out.println(!false);
  // trueをプリント
 System.out.println(!true);
  // falseをプリント

We can also use the Boolean operator ! with Boolean 
expressions such as the following:
 System.out.println( !(4 <= 10) );
The example above will print out false because the 
statement "4 is less than or equal or 10" is true, but the ! 
operator will return the opposite value, which is false.
また、他の2つのブーリアン演算子と同様に、!ブーリアン演算子 も、
直後に、ブーリアン「式」 を、取ることができます。下記の例では、
 System.out.println( !(4 <= 10) );
「4 <= 10」 は、true ですが、! によって、値は、false に、変えられます。Instructions
1.
Use the ! operator to return a value of true for the code on 
line 4.
! を、使って、4行目のコードが、true を、プリントするようにしてください。 

2.
Use the ! operator to return a value of false for the code on 
line 5.
! を使って、5行目の 式/5>=1 が、false になるようにしてください。




[Next]
5. Boolean Operators: Precedence
(ブーリアン演算子の実行時の優先順位について)
●Learn
The three Boolean operators &&, ||, and ! can 
also be used together and used multiple times to form 
larger Boolean expressions.
&&, ||, ! の、3つのブーリアン演算子は、同じブーリアン式の中で、
一緒に使われ、さらに、何回も使われることもあります。
そして、式 は、大きな/長い 式になります。

However, just like numerical operators, Boolean operators 
follow rules that specify the order in which they are 
evaluated. This order is called Boolean operator 
precedence.
この時、ブーリアン演算子 にも、足し算・引き算・掛け算・割り算 にある、
「どの計算を先に実行するのか」 という決まりごとが、同様にあります。
そのルールに従って、実行されるわけです。
このルールのことを、ブーリアン演算子 における 優先順位 と、言います。 

The precedence of each Boolean operator is as follows:
 ① ! is evaluated first
 ② && is evaluated second
 ③ || is evaluated third
Like numerical expressions, every expression within 
parentheses is evaluated first. Expressions are also read 
from left to right.
3つのブーリアン演算子の優先順位はこうなります:
 ① ! が、最初に 評価/実行 されます 
 ② && は、2番目です
 ③ || は、3番目です
そして、足し算や掛け算のような、数値計算と同様に、
ブーリアン演算子でも、
 ( ) の中の式
を、優先して実行されます。
そして、
 基本は、左から右へと、評価される/実行される
ことも、覚えておきましょう。

The following statement demonstrates how Boolean 
operator precedence works:
 System.out.println( !(false) || true && false);
The example above will print out true. In order, the 
expression is evaluated as follows:
1.
First, the ! Boolean operator in !(false) returns true.
2.
Second, true && false evaluates to false.
3.
Finally, the remaining expression true || false evaluates to 
true.
では、下記の 文 で、ブーリアン演算子は、どのように優先順位 に、
したがって、式が、実行/評価 されていくのかを、見てみましょう。
 System.out.println( !(false) || true && false);
結果は、true と、評価されます:
1.
まず、!演算子 が、実行されて、 !(false) は、true を返します。
2.
次に、&&演算子 が、優先順位が高いので、
true && false を、評価し、false を、返します。
3.
最後に、以上の結果から、true || false が、実行され、
true となるわけです。 Instructions
1.
Line 4 has a code statement that is incomplete. Use each 
Boolean operator no more than once to replace the empty 
comments /**/. The code statement should print out false.
Line4:
boolean riddle = /**/( 1 < 8 /**/ (5 > 2 /**/ 3 < 5)); 
4行目のコードは、未完成です。
3つのブーリアン演算子を、それぞれ1回だけ使って、
 /**/ の部分を、書き換え
て、ください。
ただし、コンソールウィンドウに、falseが、プリントアウトされなければいけません。
 * コツとしては、1 < 8 などの各式の評価を、
先に書いたのを、メモ書きして、 見やすくしておくこともひとつのやり方かな、
と思います。
また、( ) は、まず優先されることも、ポイントです。 




[Next]
6. If Statement
●Learn
Let's get familiar with how relational, equality, and Boolean 
operators can be used to control the flow of our code.
では、いままで学習した、比較演算子・等価演算子・ブーリアン演算子が、
私たちのJavaコードの中で、どのように、プログラムの流れを、変えていくのか?
を、見ていくことにしましょう。

We'll start by exploring the if statement.
1.
In Java, the keyword if is the first part of a conditional 
expression.
2.
It is followed by a Boolean expression and then a block of 
code. If the Boolean expression evaluates to true, the block 
of code that follows will be run.
まずは、if文(if statement)を、使って、考えてみましょう。
1.
Javaでは、ifキーワード は、まず、最初に来ます。
2.
そして、
 (条件文)
 { いくつかのコードたち }
を、従えています。
( ) の中の、条件/条件式 が、true であれば、{ } の中の、
コードたちが、実行されるという仕組みになっています。 

Here's an example of the if statement used with a 
conditional expression:
 if (9 > 2) {
     System.out.println("Control flow rocks!");
 }
In the example above, 9 > 2 is the Boolean expression that 
gets checked. Since the Boolean expression "9 is greater 
than 2" is true, Control flow rocks! will be printed to the 
console.
以下に、条件式,9>2 が、使われている、if文 があります。
 if (9 > 2) {
     System.out.println("Control flow rocks!");
 }
この文では、まず、
 9>2
が、チェックされます。
そして、
 これは正しいので
Control flow rocks!(意味は分かりましぇんねん)が、コンソールに、
プリントアウトされます。

The if statement is not followed by a semicolon (;). Instead 
it uses curly braces ({ and }) to surround the code block 
that gets run when the Boolean expression is true.
この if文 は、以前ちょっと言及しましたが、
 ; で、終わらない文
です。
その代わりに、条件/条件式 が、正しかったときに実行されるコードたち を、
囲んでいる { }(curly braces)が、あるという構造です。 Instructions
1.
The if statement in the code editor is missing its Boolean 
expression. Provide the if statement with a Boolean 
expression that evaluates to true.
右のエディタにある if文 には、ブーリアン式 が、欠けています。
その部分/(ここ)/4行目 に、true と評価される ブーリアン式/条件式 を、
書いてください。




[Next]
7. If-Else Statement
●Learn
Sometimes we execute one block of code when the Boolean 
expression after the if keyword is true. Other times we may 
want to execute a different block of code when the Boolean 
expression is false.
ifキーワード の後の、( ) が、true になる時、
{ } の中にあるコードを、実行したい場合は、よくあることですが、
false に、なった場合に、実行してほしい コード/アクション があることも、
十分にありえます。 

We could write a second if statement with a Boolean 
expression that is opposite the first, but Java provides a 
shortcut called the if/else conditional.
1.
The if/else conditional will run the block of code associated 
with the if statement if its Boolean expression evaluates to 
true.
2.
Otherwise, if the Boolean expression evaluates to false, it 
will run the block of code after the else keyword.
条件式 の、「条件を逆に書いて」、、、
例えば、x<3 が、前の if文 の条件なら、
x>=3 を、新しい if文 の、条件式にすればいいですね、、、
上に書いたことを、実現できますが、Java には、
if/else文(if/else conditional)という、簡単に、それを実行できる文が、
用意されています。
1.
if/else文 は、if の後の、条件式 が、true である時は、
条件式のすぐ後にある { } の中の、コードのかたまり を、実行します。
2.
もし、条件式の値が、false の時には、elseキーワード の後にある、
{ } の中の、コードのかたまり を、実行します。

Here's an example of if/else syntax:
 if (1 < 3 && 5 < 4) {
     System.out.println("I defy the Boolean laws!")
 } else {
     System.out.println("You can thank George Boole!");
 }
In the example above, the Boolean expression "1 is less 
than 3" and "5 is less than 4" evaluates to false. The code 
within the if block will be skipped and the code inside the 
else block will run instead. The text "You can thank George 
Boole!" will be printed in the console.
では、if/else文 の、例を見てみましょう。
 if (1 < 3 && 5 < 4) {
     System.out.println("条件式 は、true だ!")
 } else {
     System.out.println("条件式は、false だ!");
 }
上のコードでの、
 1 < 3 && 5 < 4
は、false だと、評価されます。ということは、
最初の、{ } の中のコードは、スキップされて/飛ばされて、
 else の後の、{ } の中のコード が、実行されることになりますね。
コンソールには、
 条件式は、false だ!
が、プリントされます。
(ただし、2015/11/8 時点では、日本語不可!) Instructions
1.
The if/else statement in the code editor currently prints out 
the code in the if block. Modify the if statement's Boolean 
expression so that the code in the else block gets executed 
and prints to the console.
現状では、条件式
 7<=7
は、true なので、
 ifブロックのコード/最初の{ }の中のコードが実行され
て、Try again...(もう一回...)が、コンソールにプリントアウトされます。
ここで問題です:
elseブロック/elseキーワードの後の{ }の中のコード が、実行されて、
 Success!(成功!)
が、コンソールにプリントアウトされるように、
条件式を、修正/ちょっとだけ変えればよい してください。




[Next]
8. If-ElseIf-Else Statement
●Learn
Good work! In some cases, we need to execute a separate 
block of code depending on different Boolean expressions. 
For that case, we can use the if/else if/else statement in 
Java.
1.
If the Boolean expression after the if statement evaluates to 
true, it will run the code block that directly follows.
2.
Otherwise, if the Boolean expression after the else if 
statement evaluates to true, the code block that directly 
follow will run.
3.
Finally, if all previous Boolean expressions evaluate to false, 
the code within the else block will run.
Good work!、時には、いろいろな 条件/ブーリアン式 に、応じて、
コードを実行させる必要があるときもあるでしょう。
そんな時には、
 if/else if/else 文
を、使いましょう。
1.
if キーワード の後の 条件式/ブーリアン式 が、true であれば、
そのコードブロックを、実行します。
2.
そうでない時で、else if の後の、( ) の中の、条件式/ブーリアン式 が、
true である時は、そのブロックのコードを実行します。
else if キーワード の後の、{ } の中のコードです。
3.
結局、どの 条件式/ブーリアン式 にも、当てはまらなかった場合は、
elseブロック のコード、、
else キーワード の後の、{ } の中のコード、、を、実行します。

Here's an example of control flow with the if/else if/else 
statement:
 int shoeSize = 10;

 if (shoeSize > 12) {
     System.out.println("Sorry, your shoe size is currently 
 not in stock.");
 } else if (shoeSize >= 6) {
     System.out.println("Your shoe size is in stock!");
 } else {
     System.out.println("Sorry, this store does not carry 
 shoes smaller than a size 6.");
 }
In the example above, the int variable shoeSize is equal to 
10, which is not greater than 12, but it is greater than or 
equal to 6. Therefore, the code block after the else if 
statement will be run.
では、if/else if/else 文 の例を見てみましょう。
 int shoeSize = 10;

 if (shoeSize > 12) {
     System.out.println
     ("すいませんが、あいにくそのサイズの靴は切らしております。");
 } else if (shoeSize >= 6) {
     System.out.println("はい、ございます!");
 } else {
     System.out.println
     ("すみませんが、当店は6インチより小さい靴は、扱っておりません。");
 }
上のコードにおいて、int 型の変数、shoeSize に、10 を、セットしています。
それは、12 よりは大きくなく、でも、6 よりは大きいですね。
ですから、else if の、コードブロック が、実行されることになります。 Instructions
1.
Set the value of the round variable so that the code in the 
else if block runs.
int型変数 round に、値を セット/代入/保存 して、
else if コードブロックが実行されるようにしてください。
*
The match is over! - 試合終了です!
The match is underway! - 試合進行中!
The boxing match hasn't started yet.
 - このボクシングの試合はまだ始まっていません! 




[Next]
9. Ternary Conditional(選択する演算子/三項演算子)
●Learn
if/else statements can become lengthy even when you 
simply want to return a value depending on a Boolean 
expression. Fortunately, Java provides a shortcut that 
allows you to write if/else statements in a single line of 
code. It is called the ternary conditional statement.
条件式/ブーリアン式* が、(true/falseの)どちらを返すかによって、
 単に 値 を、返してほしいだけ
の時には、
 三項演算子(ternary conditional operator)
が、簡単に書けて、便利です。
そんな場合のコードを、if/else文 を使わず、1行で、書ける方法です。
* ブーリアン式 について:
よくよく考えてみると、この言い方は、やや奥が深くて、
すぐにはピンと、私自身も来ないことに気づきました。
ということで、ちょっとまとめてみます。
まず、ブーリアン式 と言うのは、条件式 とも、言えます。
なぜなら、true/false を返すので、どちらを返すかによって、
条件として使うわけですね。
ですから、つまり、
 true または、false を、返す式が、
 ブーリアン式
と、言える訳です。
なので、次の4つが考えられるでしょう!
①比較演算子 を使った式
  3>5 など
②等価演算子 を使った式
  3!=5 など
③ブーリアン演算子 を使った式
  true || false など
④、上の3つを混ぜたやや複雑な式
  1 < 3 && 5 < 4 など
やや、長くなりましたが、プログラミング には、曖昧さは、
避けたいですね。

The term ternary comes from a Latin word that means 
"composed of three parts".
	・・・
These three parts are:
1.
A Boolean expression
2.
A single statement that gets executed if the Boolean 
expression is true
3.
A single statement that gets executed if the Boolean 
expression is false
「ternary」は、ラテン語から来ている言葉で、
 ’’3つの部分から構成される’’
という意味です。
	・・・
では、3つの部分を説明しましょう。
1つ目:
 ブーリアン式
2つ目:
 1つ目のブーリアン式 が、true を返した場合、
 実行される式
3つ目:
 1つ目のブーリアン式 が、false を返した場合、
 実行される式
こんな風に説明出来ます。

Here is an example of a ternary conditional statement:
 int pointsScored = 21;

 char gameResult = (pointsScored > 20) ? 'W' : 'L';
 System.out.println(gameResult);
In the example above, the int variable called pointsScored 
is equal to 21.
	・・・
The Boolean expression is (pointsScored > 20), which 
evaluates to true. This will return the value of 'W', which is 
assigned to the variable gameResult. The value 'W' is 
printed to the console.
以下が、三項演算子 を、使った例です。
 int pointsScored = 21;
  *pointsScored - 達成スコア
 String gameResult =
  (pointsScored > 20) ? "クール!" : "へたくそだね~";
 System.out.println(gameResult);
  * gameResult - ゲームの結果
  * String - 文字列オブジェクト
  charタイプだと説明しにくいので、変えただけなので、
  文字列データ を、セットするためと、思っておけば、今は、OKです。 
int タイプの値、pointedScored は、21 なので、
 ブーリアン式の、pointsScored > 20
は、true になります。
なので、テキストの "クール!" が、変数gameResult に、
セットされることになります。
そして、コンソールには、"クール!" が、プリントされると言うわけです。 Instructions
1.
Set the canDrive variable equal to the ternary expression: 
(fuelLevel > 0) ? 'Y' : 'N';
intタイプ の 変数 canDrive に、次の、三項演算子を使った式 の値が、
返されるような/代入されるような/セットされるような、コードにしてください。
 (fuelLevel > 0) ? 'Y' : 'N' 
* fuelLevel - ガソリンの残り量
canDrive - 運転できますか?
Y - Yes
N - No
canDrive に、代入した文の最後に、; を、忘れずに!




[Next]
10. Switch Statement
●Learn
The conditional statements that we have covered so far 
require Boolean expressions to determine which code block 
to run. Java also provides a way to execute code blocks 
based on whether a block is equal to a specific value. For 
those specific cases, we can use the switch statement, 
which helps keep code organized and less wordy.
今までに登場してきた、
 条件文(conditional statement)
 * if文 の仲間たち
では、「ブーリアン式」が、どのコードブロックを実行するかを、決定するために、
必要でした。
でも、Javaには、
 特定の値 と、一致するブロックを、実行する
方法も、用意されています。 
こんなときは、
 スイッチ文(switch statement)
を、使いましょう。
スイッチ文は、コードを見やすく整理してくれますし、
if/else if/else 文 より、簡単に書けます。
でも、もちろん、どちらが適しているかは、ケースバイケースです。

The switch statement is used as follows:
int restaurantRating = 3;

switch (restaurantRating) {

    case 1: System.out.println("This restaurant is not my 
favorite.");
      break;

    case 2: System.out.println("This restaurant is good.");
      break;

    case 3: System.out.println("This restaurant is 
 fantastic!");
      break;

    default: System.out.println("I've never dined at this 
 restaurant.");
      break;
}
In the example above, we assigned the int variable 
restaurantRating a value of 3. The code will print a 
message to console based on the value of restaurantRating.
	・・・
In this case, This restaurant is fantastic! is printed to the 
console.
	・・・
The break statement will exit the switch statement after a 
condition is met. Without the break statement, Java will 
continue to check whether the value of restaurantRating 
matches any other cases.
	・・・
The default case is printed only if restaurantRating is not 
equal to an int with the value of 1, 2, or 3.
以下は、スイッチ文 の例です:
int restaurantRating = 3;

switch (restaurantRating) {
	// restaurantRating - レストラン評価
    case 1: System.out.println("×です");
      break;

    case 2: System.out.println("○です");
      break;

    case 3: System.out.println("◎です");
      break;

    default: System.out.println("行ったことがありません。");
      break;
}
上のスイッチ文は、
レストランを、1,2,3 で、評価し、その評価にしたがって、コメントします。
ここでは、intタイプ の変数 restaurantRating に、
3 を、代入しました。
	・・・
ここでは、
 ◎です
と、プリントされます。
 break;(break statement)は、
条件が、一致した時点で、スイッチ文 を、終了するためのものです。
もし、break; がなければ、Javaプログラムは、条件に一致する値がないか、
チェックし続けます。
	・・・
default: のところでは、
int値 が、1,2,3 のいずれでもない場合、実行されることになっています。Instructions
1.
Set the code block under the default case to:
System.out.println("Messi is in position...");
default: である時に実行されるコードとして、
 System.out.println("Messi is in position...");
を、セットしてください。

2.
Look at the code in the code editor. Set the char variable 
penaltyKick value to L, R, or C.
4行目の、char タイプ の 変数 penaltyKick の 値 として、
L、R または C を、セットしてください。

* Messi is in position...
 メッシは、自身のポジションにいます。
penaltyKick - penalty kick(ペナルティーキック)
Messi shoots to the left and scores!
 メッシは、左へシュート、、得点しました!
Messi shoots to the right and misses the goal!
 メッシは、右へシュート、、はずしました!
Messi shoots down the center, but the keeper blocks it!
 メッシは、真ん中へ思いっきりシュート、、しかしキーパー、ブロックしました! 




[Next]
11. Generalizations
●Learn
Great work! Control flow allows Java programs to execute 
code blocks depending on Boolean expressions. What did 
we learn about control flow so far?
OK, very much!、
 場合に応じて、アクションするプログラム / 制御フロー(control flow)
とは、ブーリアン式 の結果によって、
実行するコードを、柔軟に決められることでした。
それでは、このチャプターでの成果をまとめてみましょう。 

- Boolean Operators: &&, ||, and ! are used to 
build Boolean expressions and have a defined order of 
operations
ブーリアン演算子、&&||! は、
 ブーリアン式を作ること
 どのアクションにするかを決定すること
のために使われます。

- Statements: if, if/else, and if/else if/else statements are 
used to conditionally execute blocks of code
if文if/else文if/else if/else文 は、
条件に応じたコードを実行するために使われます。

- Ternary Conditional: a shortened version of an if/else 
statement that returns a value based on the value of a 
Boolean expression
三項演算子 は、if/else文 を、簡単に書きたいとき、多くの場合、
使うことが出来ます。ブーリアン式が、true か false かで、
どちらの 値 を返すのか、決定するのです。

- Switch: allows us to check equality of a variable or 
expression with a value that does not need to be a Boolean
スイッチ文は、変数 または 式 を使って、実行する文 を、決定します。
そして、スイッチ文では、その、変数や式 は、ブーリアン値/trueかfalse で、
ある必要はありません。Instructions
1.
Use the precedence rules to help you evaluate the Boolean 
expression in the single line comment above the tricky 
variable.
	・・・
Then, set the boolean variable tricky equal to the result 
(either true or false).
5行目の、
 boolean tricky の、上にある
 コメント:
  // ( 3 >= 3 && !(true || true) )
の 式 が、true になるか?、false になるか? を、
演算子の優先順位のルールを使って考えてください。
	・・・
そして、変数 tricky に、
	true または false
を、代入/セット してください。
もちろん、
  代入演算子(= … 右辺の値を左辺の変数に代入する)
    // 「ひとつ上をゆくJavaの教科書(岩谷宏)」より
  ;
を、お忘れなく! 
* あなたが、抜け目なく、
このチャプターを、学習して来たなら、
  >= と、&&
の、優先順位は、学習していないじゃないか?と思われるかもしれません。
私の記憶でも、
 && と || と !
に関する、優先順位は、習いましたが、
確かに、>= と、&&
に関しては、どちらを先にやるかを、学習した覚えはありません。
また、これは、この問題を解くために、必須だとも思われますので、
以下に、Javaの優先順位を示した表を、示しておきます。

・・・ ここから ・・・
●結合規則と優先順位

優先順位 高い
------------------------------------------------
左  (引数)  [配列添字]  .  ++  --(後置き)
右  !  ~  +  - (単項演算子)  ++  --(前置き)
右  new  (型)
左  *  /  %
左  +  - (算術演算子)
左  <<  >>  >>>
左  >  >=  <  <=  instanceof
左  ==  !=
左  &
左  ^
左  |
左  &&
左  ||
右  ?:
右  =  ope=
------------------------------------------------
優先順位 低い

・・・ ここまで ・・・
 // JavaDrive(buzzword)より.
  // このWebサイトは、字が大きく、
  // すっきりまとまっていて、とても調べるのに便利です! 

2.
Use a Boolean expression that will print out the code in the 
else block of the if/else statement.
if/else文 において、elseブロックのコードが実行されるように、
(Upgraded to the future! が、プリントされます)
if/else文 の条件である ( ) の中の、ブーリアン式 を、書き換えてください。 

3.
Set the value of the int variable subwayTrain equal to the 
case that will print "This is a Brooklyn bound train!" to the 
console.
switch文 が、
 This is a Brooklyn bound train!
と、プリントするように、
int 型変数、subwayTrain の、値を、書き換えてください。
(18行目) 

* Stuck in the past...
  過去にとらわれていますね...
Upgraded to the future!
  明るい未来に向かってますね!
subwayTrain
  subway train - 地下鉄列車
This is a South Ferry bound train!
  この列車は、South Ferry 行きです!
This is a Brooklyn bound train!
  この列車は、Brooklyn 行きです!
This is a Queens bound train!
  この列車は、Queens 行きです!
I'm not sure where that train goes...
  あの電車がどこへ行くのか知りません... 


[the End of this HTML]