(´・ω・)ノ < らいなーです。
■配列の「入れ子」(=サブ配列)って何?
■グローバル変数とローカル変数って?
Macrodroidの変数の記事がかなり古くなったので、今後はこちらにタイムリーな情報を纏めていきたいと考えております。
最終更新日時:202406261831
まずは変数の関係性についての俯瞰図
■そもそも変数って?
たとえば農場の土地(=ワークメモリ)がそこにあるとする
農場では牛豚羊鶏犬猫たまに熊(=型)がいるとする
それらを同じ種類で農場の土地が許す範囲で、とりあえず囲っておくときの囲っている範囲ひとつひとつが、コンピュータで用いられる【変数】です。
一般にはラベリングできる箱のようなもの、と捉えられているようです。
数学的な変数は少しばかり違いますがフカイハナシになり面倒臭いので話しません。
■Macrodroidで利用できる変数にはどんなものがあるの?
Macrodroidで設定可能な【変数】は、マジックテキストと呼ばれる組み込み変数以外の、ユーザー定義変数としては以下のとおりです。
真偽型
0:False
もしくは
1:True
単純で原始的な、
スイッチのオフとオンのイメージ
電源のオフオンとか。
整数型
最小値:-9,223,372,036,854,775,807
最大値: 9,223,372,036,854,775,807
所謂Big Integerであり、最大値に+1すると、
ビット反転で最小値を指し示す事が検証で判明しています。(これを符号付数値表現と専門的には言い、DNSのAレコードのシリアル値の表現などにも使われています。ある値を境に正負が逆転するものと覚えてください。)
小数点を扱わない数を管理します。
文字列型
文字を管理します。
数字以外も扱えるのが特徴です。
いわゆるオブジェクト参照でString型。
小数点型
倍精度浮動小数点型、
所謂Double型
IEEE 754 規格で定められた
小数点つきの数を管理します。
javaの小数点と動きはいっしょなので、厳密な小数点計算をしようとすると「銀行丸め」問題にぶち当たります。
連想配列型
真偽型・整数型・文字列型・小数点型が複数連続して存在するとき、文字(KEY)でそれらをラベリングして管理します。中身はラベリングする際の文字(KEY)を指定することで取り出せます。英語ではDirectoryと呼ばれ、別名で辞書型ともいわれます。
JSON構造の変換後の受け口となる変数型でもあります。
配列型
真偽型・整数型・文字列型・小数点型が複数連続して存在するとき、数字(ID)でそれらをラベリングして管理します。中身はラベリングする際の数字(ID)を指定することで取り出せます。英語ではArrayと呼ばれます。
■配列の「入れ子」(=サブ配列)って何?
配列の「入れ子(いれこ)」とは、配列の要素(囲いの中身)がさらに配列になっている状態を示します。ITの現場では入れ子配列という言い方をされるケースもあります。
ちょっと入り組んだJSON構造は、よくこのような状態になっていますね!
■グローバル変数とローカル変数って?
ローカル:そのマクロからしか参照できない
グローバル:Macrodroid全体で参照できる
ローカル変数をグローバルに変更するには、マクロエディタ下部のローカル変数一覧から、グローバル変数に変えたい変数をロングタップ(長押し)してガイドに従って下さい。