職業訓練15日目「ループ文」

職業訓練15日目「ループ文」

こんにちはっ!
4月6日金曜日、4月9日月曜日の更新を忘れてしまいました。
金曜日は更新したつもりが忘れていて、
昨日、月曜日は、花見で遅くなった為に更新ができませんでした。
花見があっても、仕事はありますしね・・・。
という訳で、今日の更新は三日分さくっとまとめます!

今日の着席状況

2分前ギリギリ一人。
もうこの方は限界が近いのかもしれない。
授業にもついてこれていないだけでなく、本人にやる気がないみたい・・・。
遅刻も休みも一番多いし、 周りとのコミュニケーションが取れず、ひとりぼっち。
花見をした時も一人離れた場所に移動して・・・w
コミュニケーション能力って大事だなと改めて痛感させられたワンシーンでした。

関係演算子と条件

まずは、基本的な関係演算子を覚える

  • == 右辺が左辺に等しい
  • != 右辺が左辺に等しくない
  • > 右辺より左辺が大きい
  • >= 右辺より左辺が大きいか等しい
  • < 右辺より左辺が小さい
  • <= 右辺より左辺が小さいか等しい

「a!=6」は、aが6でない値のときにtrueとなる条件という意味。
「!=」や「==」は2文字で1つの演算子なので、
!と=の間に空白を入力してはいけない。

=演算子が、代入演算子と呼ばれていましたが、
==は異なる種類の関係演算子なので、混同しないように。

import java.io.*

「import java.io.*」は入出力のパッケージ
これがあるとjava.ioパッケージのクラスをクラス名だけで使えるということ。
フルパスで書くなら
java.io.BufferedWriter bw = new java.io.BufferedWriter();
みたいになる。

いろいろな演算子を利用してみよう

文字列連結演算子

  • 文字列を連結するには「+」演算子を使う!
  • インクリメント・デクリメント演算子

変数の値を1加算、減算する演算子である。
a++;
a = a+1;
b–;
b = b-1;

インクリメント・デクリメントの前置と後置

a++
++a
オペランドの前と後ろのどちらでも記述することができる。
前者を「前置インクリメント演算子」、
後者を「後置インクリメント演算子」と呼びます。

しかし、この表記の違いによって、
プログラムの実行結果が異なる場合もあります。

前置インクリメント演算子にすると、異なる実行結果となった。

代入演算子

「左辺の変数に右辺の値を代入する」
という機能を持った演算子です。

多いので、今は基本的なものだけ把握しておこう。
【例】
a += b;
変数aの値に変数bの値を足し、その値を変数aに代入している。

シフト演算子

「<<」、「>>」、「>>>」という記号です。
数値を2進数であらわした場合のケタを、
左または右に指定数だけずらす(シフトする)

たとえば、「<<」は左シフト演算子と呼ばれる。

左辺を2進数で表記したときの値を、
右辺で指定したケタ数分だけ左にずらし、
はみだしたケタ数だけ右端から0を入れる。

まぁ、難しいのでここは他の参考サイトを見てください。
10進数を左右に移動すると、10倍、1/10倍となるように
2進数をシフト移動するということは、2倍、1/2倍されるということなのです。

とにかくコンピュータの内部は2進数で数値が扱われているので、
通常の四則演算よりもシフト演算のほうが処理速度が速いのです。

throws IOException

throws IOException
エラーが出るかもしれないので、そういうときは投げちゃう
っていうことらしい
超ヾ(●・ω・●)ノィィ――ネ!!!!

eclipseのインストール

IDE:統合開発環境
インストール方法は、以前にやったので省略!

新規javaクラス

新規javaクラス

public static void main(String[] args)と、
コメントの生成にチェックを入れている様子。

空白文字の表示にチェック

空白文字の表示にチェック

空白文字の表示を入れておくのは、ドリからやっている事なので・・・(´・ω・`)

インストール済みのJREの選択

インストール済みのJREの選択

JREの意味は開発用という事ですが、
JDKを使おうと指示されました。

メモ

「必要なプロジェクトでエラー」と出たら、
どこかでエラーがあるという意味。
!はnotと読む。

ループ文

for文

よくあるループ文ですね。
カウンタを使って処理を繰り返します。

while文

for文はカウンタを使って決めた回数分だけ、
処理を繰り返すプログラムでした。

while文では、条件がtrueである限り、
指定した文を何度でも繰り返し処理することができます。

do~while文

もう一つ繰り返しを行う構文を見てみます。
これは、最後n指定した条件がtrueである間、
ブロック内の処理を繰り返します。

文のネスト

ループ文をネストして、作りました。
ここで、System.out.println(“”);を使って書いていたら
思った通りの改行になりませんでした。
そこで、System.out.print(“”);を使ったら直りました。
基本を忘れちゃいけませんね!

breakとcontinue

処理の流れを変更するのが
break文とcontinue文です。

break
処理の流れを強制的に終了し、そのブロックから抜ける
continue
繰り返し内の処理を飛ばし、ブロックの先頭位置に戻って次の処理を続ける

まとめ

  • for文を使うと、繰り返し処理ができます。
  • while文を使うと、繰り返し処理ができます。
  • do~while文を使うと、繰り返し処理ができます。
  • 文はネストすることができます。
  • break文を使うと、繰り返し文またはswitch文のブロックを抜け出します。
  • continue文を使うと、繰り返し文の最初に戻って次の繰り返し処理にうつります。

ここまでで、色々とプログラムを書いてきているので、
今度、問題集みたいのを作っていきたいと思います。

photo by: paul (dex)