「Java/基礎/反復処理」の版間の差分

削除された内容 追加された内容
M +syntax,tt->{{tt}}
クラス名が長すぎ。
11 行
 
<syntaxhighlight lang="java" highlight="4,6">
class JapaneseHelloWorldJpnHello {
public static void main(String[] args) {
char[] msg = "世界よこんにちは".toCharArray();
24 行
コンパイルして実行してみましょう。
 
$ <span style="font-weight:bold">javac JapaneseHelloWorldJpnHello.java</span>
$ <span style="font-weight:bold">java JapaneseHelloWorldJpnHello</span>
50 行
ソースコードを規定値以外の文字コードで保存した場合は、使用した文字コードをコンパイル時に指定するようにします。たとえば次の例は「UTF-8」を指定している場合です。
 
$ <b>javac -encoding UTF-8 JapaneseHelloWorldJpnHello.java</b>
 
システムによっては、問題はコンパイルだけとは限りません。
61 行
表示結果を正しくするためには、次のようにしてプログラムを実行します。
 
$ <b>java -Dfile.encoding=UTF-8 JapaneseHelloWorldJpnHello</b>
</div>
 
68 行
 
<syntaxhighlight lang="java" highlight="5,8">
class JapaneseHelloWorldJpnHello {
public static void main(String[] args) {
char[] msg = "世界よこんにちは".toCharArray();
84 行
さらに次のような書き方もできます。
<syntaxhighlight lang="java" highlight="5,7">
class JapaneseHelloWorldJpnHello {
public static void main(String[] args) {
char[] msg = "世界よこんにちは".toCharArray();
100 行
これが最もシンプルな書き方です。
<syntaxhighlight lang="java">
class JapaneseHelloWorldJpnHello {
public static void main(String[] args) {
for (char c: "世界よこんにちは".toCharArray()) {
192 行
 
まず、{{tt|n}}の値は最初「1」です(これは反復条件「n <= 9」を満たしています)。ですから、<b>A</b>で示した文は
 
<syntaxhighlight lang="java">
System.out.println("7 x 1 = " + 7 * 1);
</syntaxhighlight>
 
と同等になります。
 
2回目はどうでしょう? 2回目では{{tt|n++}}され、{{tt|n}}の値は2になります。
2回目はどうでしょう? 2回目では{{tt|n++}}され、{{tt|n}}の値は2になります。ですから、<b>A</b>の文は
 
<syntaxhighlight lang="java">
System.out.println("7 x 2 = " + 7 * 2);
</syntaxhighlight>
 
と同等ということになります。簡単ですね?
 
248 ⟶ 252行目:
 
<syntaxhighlight lang="java">
class JapaneseHelloWorldJpnHello {
public static void main(String[] args) {
for (char c : "世界よ今日は".toCharArray()) {
273 ⟶ 277行目:
 
なお、'''この例では配列を使って説明していますが、拡張for文が使えるのは配列だけではありません'''。(少し先取りした内容になりますが)コレクションフレームワークや、もっと一般的に言うと<code>Iterable&lt;E&gt;</code>を実装したクラスが拡張for文で使えます。具体的には、
 
<syntaxhighlight lang="java">
for (E var1 : /* Iterable<E>を実装したクラスのインスタンス */) {
278 ⟶ 283行目:
}
</syntaxhighlight>
 
という構文になります。
拡張for文は、そうしたインスタンスにも配列同様の考え方で適用することができます。
292 ⟶ 298行目:
}
</syntaxhighlight>
 
処理の進み方は次のとおりです。