演算子
演算子とは、+ ,– , *, / のようにデータに対する演算をする記号のことを言います。
演算子の種類
演算子にはさまざまな種類があります。
- 算術演算子
- 比較演算子
- 論理演算子
- 代入演算子
- 複合代入演算子
算術演算子は一番なじみが深い、足し算、引き算、割り算、掛け算です。余りを計算しない割り算は余り算と呼ぶことにします。
//足し算
print(1 + 2)
//引き算
print(15 - 8)
//割り算
print(58 / 4)
//掛け算
print(7 * 7)
//余り算
print(7 % 2)
数学と同じで優先度が存在します。次のようなプログラムを実行すると3ではなく6が出力されるので注意が必要です
print(3 + 7 % 3 * 3)
上記の例で足し算を最初に計算してほしい場合は()でくくってあげる必要があります。これで3が出力されるようになりました。
print((3 + 7) % 3 * 3)
Note
小数計算を行う際、%で余りを求めることはできません。余り算を行いたいときは、truncatingRemainder() という関数を使って計算を行います。詳しい使い方は下記のURLを参考にしてみてください。
float系の演算で余り演算子(%)が廃止、それに変わるメソッドはだるま落としと最寄駅
単項演算子
単項演算子は値の符号を表すものです。
var value:Int = 10
print(value)
print(-value)
print(+value)
出力結果は、10、-10、10となります。四則演算の時と違い、間にスペースを入れることができないので注意です!
比較演算子
演算子 | 書き方 | 意味 |
== | a == b | aとbは等しい |
!= | a != b | aとbは等しくない |
> | a > b | aはbより大きい |
< | a < b | aはbより小さい |
>= | a >= b | aはbより大きいまたは等しい |
<= | a <= b | aはbより小さいまたは等しい |
比較演算子はこのようになっています。最初は絶対に忘れるので、実際にプロラムを組んでいく中で使いながら覚えるのがいいと思います。
論理演算子
演算子 | 書き方 | 意味 |
! | !a | aではない |
&& | a && b | aとb両方 |
| | | a | | b | aまたはbどちらか |
論理演算子は日常生活であまりつかわないので初めは戸惑いがちですが、条件分岐を行う際に非常によく使うものなので、覚えておいてください。
代入演算子
代入演算子とは算数や数学で使用される=の記号です。
左辺の値を右辺の値に代入します。等しいという意味ではないので注意が必要です。
let a = 10
var b = 7
b = a
print(b)
このようなコードの場合変数bに定数aが代入されたため、10が出力されます。
複合代入演算子
複合代入演算子は演算と代入を組み合わせて短く書けるものです。かけなくても問題ありませんが、複合代入演算子もよく使われるので読めるようにしておくのがいいと思います。
演算子 | 書き方 | 意味 |
+= | a += b | a = a + bと同じ |
-= | a -= b | a = a – b と同じ |
*= | a *= b | a = a * b と同じ |
/= | a /= b | a = a / b と同じ |
%= | a %= b | a = a % bと同じ |
&= | a &= b | a = a & b と同じ、ビット演算で使います |
| = | a |= b | a = a | b と同じ、ビット演算で使います |