基本的な演算子

基本的な演算子

はじめに

AppleScriptは、macOSでの自動化やアプリケーション操作を簡単に実現するスクリプト言語です。プログラムを書く際に、データを操作するためには演算子が必要です。この記事では、AppleScriptで使用される基本的な演算子について詳しく解説します。演算子を理解することで、データの計算や比較を効果的に行い、より複雑なスクリプトを作成できるようになります。

演算子とは

演算子とは、値を操作するための記号やキーワードのことです。演算子を使うことで、数値の計算や文字列の結合、条件の比較などを行うことができます。AppleScriptでよく使われる演算子には、以下の種類があります。

  • 算術演算子
  • 比較演算子
  • 論理演算子
  • 文字列演算子

それぞれの演算子について詳しく見ていきましょう。

算術演算子

算術演算子は、数値の計算を行うために使用されます。AppleScriptで使用できる算術演算子は以下の通りです。

演算子 説明
+ 加算
- 減算
* 乗算
/ 除算
mod 剰余

算術演算子の例


set a to 10
set b to 3

set sum to a + b
set difference to a - b
set product to a * b
set quotient to a / b
set remainder to a mod b

display dialog "Sum: " & sum & return & ¬
    "Difference: " & difference & return & ¬
    "Product: " & product & return & ¬
    "Quotient: " & quotient & return & ¬
    "Remainder: " & remainder
    

スクリプトの説明

  • set sum to a + b: abを加算し、結果をsumに代入します。
  • set difference to a - b: aからbを減算し、結果をdifferenceに代入します。
  • set product to a * b: abを乗算し、結果をproductに代入します。
  • set quotient to a / b: abで除算し、結果をquotientに代入します。
  • set remainder to a mod b: abで割った剰余をremainderに代入します。
  • display dialog ...: 各計算結果をダイアログボックスで表示します。

比較演算子

比較演算子は、値を比較するために使用されます。結果はブール値(trueまたはfalse)で返されます。AppleScriptで使用できる比較演算子は以下の通りです。

演算子 説明
= 等しい
等しくない
< より小さい
> より大きい
以下
以上

比較演算子の例


set x to 5
set y to 10

set isEqual to (x = y)
set isNotEqual to (x ≠ y)
set isLessThan to (x < y)
set isGreaterThan to (x > y)
set isLessThanOrEqual to (x ≤ y)
set isGreaterThanOrEqual to (x ≥ y)

display dialog "x = y: " & isEqual & return & ¬
    "x ≠ y: " & isNotEqual & return & ¬
    "x < y: " & isLessThan & return & ¬
    "x > y: " & isGreaterThan & return & ¬
    "x ≤ y: " & isLessThanOrEqual & return & ¬
    "x ≥ y: " & isGreaterThanOrEqual
    

スクリプトの説明

  • set isEqual to (x = y): xyと等しいかを比較し、結果をisEqualに代入します。
  • set isNotEqual to (x ≠ y): xyと等しくないかを比較し、結果をisNotEqualに代入します。
  • set isLessThan to (x < y): xyより小さいかを比較し、結果をisLessThanに代入します。
  • set isGreaterThan to (x > y): xyより大きいかを比較し、結果をisGreaterThanに代入します。
  • set isLessThanOrEqual to (x ≤ y): xy以下かを比較し、結果をisLessThanOrEqualに代入します。
  • set isGreaterThanOrEqual to (x ≥ y): xy以上かを比較し、結果をisGreaterThanOrEqualに代入します。
  • display dialog ...: 各比較の結果をダイアログボックスで表示します。

論理演算子

論理演算子は、ブール値の論理演算を行うために使用されます。AppleScriptで使用できる論理演算子は以下の通りです。

演算子 説明
and 両方の条件が真である
or いずれかの条件が真
not 条件を反転

論理演算子の例


set isSunny to true
set isWeekend to false

set goOutside to (isSunny and isWeekend)
set stayInside to (not isSunny)
set haveFun to (isSunny or isWeekend)

display dialog "Go outside: " & goOutside & return & ¬
    "Stay inside: " & stayInside & return & ¬
    "Have fun: " & haveFun
    

スクリプトの説明

  • set goOutside to (isSunny and isWeekend): isSunnyisWeekendの両方がtrueである場合に、goOutsidetrueに設定します。
  • set stayInside to (not isSunny): isSunnyfalseの場合に、stayInsidetrueに設定します。
  • set haveFun to (isSunny or isWeekend): isSunnyまたはisWeekendのいずれかがtrueである場合に、haveFuntrueに設定します。
  • display dialog ...: 各論理演算の結果をダイアログボックスで表示します。

文字列演算子

文字列演算子は、文字列を操作するために使用されます。主に文字列の結合に使用されます。

演算子 説明
& 文字列の結合

文字列演算子の例


set firstName to "Jane"
set lastName to "Doe"

set fullName to firstName & " " & lastName
display dialog "Full Name: " & fullName
    

スクリプトの説明

  • set fullName to firstName & " " & lastName: firstNamelastNameをスペースで結合し、fullNameに代入します。
  • display dialog "Full Name: " & fullName: 結合された文字列をダイアログボックスで表示します。

演算子の優先順位

AppleScriptの演算子には、計算の順序を決定する優先順位があります。算術演算子は、通常の数学と同様に、乗算と除算が加算と減算よりも優先されます。必要に応じて、()を使用して優先順位を明示的に指定することができます。

優先順位の例


set result1 to 10 + 2 * 3
set result2 to (10 + 2) * 3

display dialog "Result 1: " & result1 & return & ¬
    "Result 2: " & result2
    

スクリプトの説明

  • set result1 to 10 + 2 * 3: 演算子の優先順位により、2 * 3が最初に計算され、次に10 +が計算されます。結果は16になります。
  • set result2 to (10 + 2) * 3: 括弧を使用して優先順位を明示的に指定し、10 + 2が最初に計算され、次に* 3が計算されます。結果は36になります。
  • display dialog ...: 各計算結果をダイアログボックスで表示します。

まとめ

AppleScriptにおける基本的な演算子について詳しく解説しました。演算子を使いこなすことで、データの操作や比較を効率的に行い、より複雑なスクリプトを作成することができます。演算子の種類や優先順位を理解し、適切に使用することで、AppleScriptのスクリプト作成がより効果的になります。次回の記事では、AppleScriptにおける条件分岐と繰り返し処理についてさらに詳しく解説しますので、お楽しみに!

上部へスクロール