「
変数
」を編集中
2021年12月8日 (水) 08:19時点における
Zen
(
トーク
|
投稿記録
)
による版
(
差分
)
← 古い版
|
最新版
(
差分
) |
新しい版 →
(
差分
)
ナビゲーションに移動
検索に移動
警告: このページの古い版を編集しています。
公開すると、この版以降になされた変更がすべて失われます。
警告:
ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。
ログイン
または
アカウントを作成
すれば、あなたの編集はその利用者名とともに表示されるほか、その他の利点もあります。
スパム攻撃防止用のチェックです。 決して、ここには、値の入力は
しない
でください!
変数は、AliceScriptにおける主要な概念の一つです。変数は、任意の場所で宣言定義でき、その値を取り出したり代入することができます。 この記事、多くの変数に共通する事項を説明した後、それぞれの型の特徴について説明します。 変数は、すべて基となる<code>variable</code>から派生しています。これは、すべての変数に共通した操作セットを提供します。 =variable型= <code>variable</code>型は、すべての変数の値を表します。<code>variable</code>型は等値演算子をサポートします。この型から文字列型にのみ暗黙的な変換をサポートします。<code>variable</code>型のメソッドは次の通りです。 *[[variable型のメソッド#Dispose|variable.Dispose]] *[[variable型のメソッド#Equals|variable.Equals]] *[[variable型のメソッド#Clone|variable.Clone]] *[[variable型のメソッド#DeepClone|variable.DeepClone]] *[[variable型のメソッド#ToString|variable.ToString]] *[[variable型のメソッド#Length|variable.Length]] *[[variable型のメソッド#Size|variable.Size]] *[[variable型のメソッド#Properties|variable.Properties]] *[[variable型のメソッド#Type|variable.Type]] *[[variable型のメソッド#Convert|variable.Convert]] AliceScriptのすべての変数および定数は、値に評価されるすべての[[式]]と同じように、型を持ちます。インタプリタはコード内で実行されるすべての演算が型安全になるようにします。例えば<code>number</code>型の変数には、その値を加算したり減算したりする算術演算が許可されます。しかし、<code>bool</code>型にはその種類の演算は許可されません。次に、特定の型の規定値を使用して変数を初期化する例を示します。 var v = type.Activate(); 型には次の種類があります。 =number型= 数値型は実数を表します。数値型は算術、比較、等値演算子をサポートしています。 AliceScriptの数値型の表現できるおおよその範囲は、±5.0 × 10−324 - ±1.7 × 10308(-15~17桁)で、サイズは8バイトです。 数値型の規定値はゼロ<code>0</code>です。また、数値型で非数、正方向の無限、負方向の無限を表す定数がそれぞれ、<code>NaN</code>、<code>PositiveInfinity</code>、<code>NegativeInfinity</code>として定義されています。 数値型への暗黙的な変換は存在しません。型変換演算子を使用するか<code>Convert</code>メソッドを使って、文字列型、<code>bool</code>型、<code>bytes</code>型からの明示的な変換がサポートされています。また、数値型専用のメソッドは存在しません。この型の型指定修飾子は<code>number</code>です。 =bool型= <code>bool</code>型は、ブール値の論理数を表します。<code>bool</code>型は論理、比較、等値演算子をサポートしています。 <code>bool</code>型の有効な値は<code>true</code>か<code>false</code>のいずれかです。 それぞれの値を表す定数がそれぞれ、<code>true</code>、<code>false</code>として定義されています。 <code>bool</code>型への暗黙的な変換は存在しません。特に、WSOFTScriptとは違い数値型の代わりに値を使用することはできません。また、文字列型、数値型、<code>bytes</code>型からの明示的変換がサポートされます。<code>bool</code>型専用のメソッドは存在しません。この型の型指定修飾子は<code>bool</code>です。 =bytes型= <code>bytes</code>型は、バイナリデータ配列を表します。<code>bytes</code>型は比較、等値演算子をサポートしています。 <code>bytes</code>型の規定値は<code>null</code>です。この型は<code>null</code>をとり得ます。この型の型指定修飾子は<code>bytes</code>です。 <code>bytes</code>型への暗黙的な変換は存在しません。また、文字列型、数値型、<code>bool</code>型からの明示的変換がサポートされます。<code>bytes</code>型専用のメソッドは存在しません。 =none型= <code>none</code>型の有効な値は唯一<code>null</code>です。この型は<code>null</code>をとります。また、<code>null</code>型は比較演算子のみをサポートします。 <code>null</code>の値を表す定数が<code>null</code>として定義されています。 <code>null</code>型への暗黙的な変換および明示的な変換はサポートされていません。 =string型= 文字列型は、テキストを一連のUTF-16コード単位として表現します。文字列型は結合、比較、等値演算子をサポートしています。 文字列型の規定値は空の文字列<code>””</code>です。また、この型の型指定修飾子は<code>string</code>です。 すべてのAliceScriptに組み込まれている型はすべて文字列型への暗黙的な変換をサポートしています。文字列型に限って、明示的な変換と明示的な変換は同じ動作になります。文字列型のメソッドは次のものがあります。 *[[string型のメソッド#Trim|string.Trim]] *[[string型のメソッド#TrimStart|string.TrimStart]] *[[string型のメソッド#TrimEnd|string.TrimEnd]] *[[string型のメソッド#StratsWith|stirng.StartsWith]] *[[string型のメソッド#EndsWith|string.EndsWith]] *[[string型のメソッド#PadLeft|string.PadLeft]] *[[string型のメソッド#PadRight|string.PadRight]] *[[string型のメソッド#Normalize|string.Normalize]] *[[string型のメソッド#CompareTo|string.CompareTo]] *[[string型のメソッド#IsNormalized|string.IsNormalized]] *[[string型のメソッド#IndexOf|string.IndexOf]] *[[string型のメソッド#Replace|string.Replace]] *[[string型のメソッド#Split|string.Split]] *[[string型のメソッド#ToLower|string.ToLower]] *[[string型のメソッド#ToUpper|string.ToUpper]] *[[string型のメソッド#EmptyOrWhiteSpaces|string.EmptyOrWhiteSpaces]] *[[string型のメソッド#Format|string.Format]] =array型= 配列型は、インデックスを使用してアクセスできる変数のリストを表します。配列型は、結合、比較、等値演算子をサポートしています。 配列型の規定値は空の配列<code>[]</code>です。この型は<code>null</code>をとり得ます。この型の型指定修飾子は<code>array</code>です。 配列型は必ずしも要素を含む必要も、同一の型である必要もありません。配列型への暗黙的な変換はサポートされていません。 明示的な変換を行うとき、その値を唯一の要素とする配列型に変換されます。配列型のメソッドには次のものがあります。 *[[配列型のメソッド#Add|array.Add]] *[[配列型のメソッド#AddRange|array.AddRange]] *[[配列型のメソッド#Remove|array.Remove]] *[[配列型のメソッド#RemoveAt|array.RemoveAt]] *[[配列型のメソッド#RemoveRange|array.RemoveRange]] *[[配列型のメソッド#IndexOf|array.IndexOf]] *[[配列型のメソッド#Contains|array.Contains]] *[[配列型のメソッド#Sort|array.Sort]] *[[配列型のメソッド#Reverse|array.Reverse]] *[[配列型のメソッド#First|array.First]] *[[配列型のメソッド#Last|array.Last]] *[[配列型のメソッド#Flatten|array.Flatten]] *[[配列型のメソッド#Marge|array.Marge]] *[[配列型のメソッド#FindIndex|array.FindIndex]] *[[配列型のメソッド#Foreach|array.Foreach]] =delegate型= デリゲート型は、匿名関数のように一連のステートメントのまとまりを表します。デリゲート型は結合、比較、等値演算子をサポートしています。 デリゲート型の規定値は空のステートメント<code>{}</code>です。この型は<code>null</code>をとり得ます。デリゲート型への暗黙的な変換と明示的な変換の両方はサポートされていません。この型の型指定修飾子は<code>delegate</code>です。 デリゲート型は、配列のように複数の要素を持つことができます。しかし、デリゲート型にはデリゲート型以外の要素を含めることはできません。 デリゲートについての詳しい説明は[[デリゲート]]の記事を参照してください。デリゲート型のメソッドには次のものがあります。 *[[デリゲート型のメソッド#Invoke|delegate.Invoke]] *[[デリゲート型のメソッド#BeginInvoke|delegate.BeginInvoke]] =type型= <code>type</code>型は、変数の型を表します。<code>type</code>型は比較、等値演算子をサポートしています。<code>type</code>型の規定値は、<code>type.None</code>です。<code>type</code>型への暗黙的な変換はサポートされていませんが、文字列型からの明示的な変換はサポートされます。この型の型指定修飾子は<code>type</code>です。<code>type</code>型のメソッドには次のものがあります。 *[[Type型のメソッド#Activate|type.Activate]] [[Category:基本]]
編集内容の要約:
AliceScript Wikiへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細は
AliceScript Wiki:著作権
を参照)。
著作権保護されている作品は、許諾なしに投稿しないでください!
キャンセル
編集ヘルプ
(新しいウィンドウで開きます)
このページで使用されているテンプレート:
テンプレート:Alert
(
編集
)
テンプレート:Func-getcolor
(
編集
)
テンプレート:Func-getsafe
(
編集
)
ナビゲーション メニュー
個人用ツール
ログインしていません
トーク
投稿記録
アカウント作成
ログイン
名前空間
ページ
議論
日本語
表示
閲覧
編集
履歴表示
その他
検索
案内
メインページ
ツアー
ダウンロード
規約
おまかせ表示
ツール
リンク元
関連ページの更新状況
特別ページ
ページ情報