便利な VB 関数
このページには、アプリの構築時に役立つ可能性がある VB の式が記載されています。
これらの関数のいくつかはパブリック アプリ内にグループ化されているので、試してみたり、動作を確認したりできます。
VB 関数: Where
Where()
関数は、指定したフィルター条件に基づいて、文字列配列のサブセットを含むゼロベースの配列を返します。
words
という変数があり、List(Of String) = {"apple", "banana", "cherry", "date"}
と定義されているとします。
「a」という文字を含む単語のリストを取得するには、Where()
関数を次のように適用します。
words.Where(Function(w) w.Contains("a")).ToList()
words.Where(Function(w) w.Contains("a")).ToList()
出力は {"apple", "banana", "date"}
です。
VB 関数: Select
Select()
関数は、ソース配列の各要素にラムダ式を適用した結果を含む新しい配列を作成します。
numbers
という変数があり、Integer() = {1, 2, 3, 4, 5}
と定義されているとします。
Select()
関数を次のように適用します。numbers.Select(Function(n) n * n).ToArray()
numbers.Select(Function(n) n * n).ToArray()
出力は {1, 4, 9, 16, 25}
です。
VB 関数: Aggregate
Aggregate()
関数は、配列内のすべての要素に対して計算を実行し、1 つの値を返します。
numbers
という変数があり、Integer() = {1, 2, 3, 4, 5}
と定義されているとします。
Dim sum = numbers.Aggregate(Function(acc, n) acc + n)
Dim sum = numbers.Aggregate(Function(acc, n) acc + n)
出力は 15
です。
VB 関数: Group By
GroupBy()
関数は、シーケンス内の要素をキー セレクター関数でグループ化します。
words
という変数があり、String() = {"apple", "banana", "cherry", "date"}
と定義されているとします。
GroupBy()
関数を次のように適用します。words.GroupBy(Function(w) w(0))
words.GroupBy(Function(w) w(0))
出力は { {"a", "apple", "date"}, {"b", "banana"}, {"c", "cherry"} }
です。
VB 関数: Order By
OrderBy()
関数および OrderByDescending()
関数は、シーケンス内の要素をキー セレクター関数に基づいて並べ替えます。
words
という変数があり、String() = {"apple", "banana", "cherry", "date"}
と定義されているとします。
OrderBy()
関数を次のように適用します。words.OrderBy(Function(w) w.Length).ToArray()
words.OrderBy(Function(w) w.Length).ToArray()
出力は {"date", "apple", "cherry", "banana"}
です。
VB 関数: Join
Join()
関数は、2 つのシーケンス内の要素をキー セレクター関数に基づき組み合わせます。
次の 2 つの変数があるとします。
-
names
はString() = {"John", "Jane", "Joe"}
と定義されています。 -
ages
はInteger() = {25, 30, 35}
と定義されています。
Join()
関数を次のように適用します。names.Join(ages, Function(name) name(0), Function(age) age Mod 10, Function(name, age) $"{name}: {age}")
names.Join(ages, Function(name) name(0), Function(age) age Mod 10, Function(name, age) $"{name}: {age}")
出力は {"John: 25", "Jane: 30", "Joe: 35"}
です。
VB 関数: First
First()
関数は、指定した条件を満たす、シーケンスの最初の要素を返します。
numbers
という変数があり、Integer() = {1, 2, 3, 4, 5}
と定義されているとします。
First()
関数を次のように適用します。numbers.First(Function(n) n Mod 2 = 0)
numbers.First(Function(n) n Mod 2 = 0)
出力は 2
です。
VB 関数: First Or Default
FirstOrDefault()
関数は、最初の要素を返します。条件を満たす要素がない場合は既定値を返します。
numbers
という変数があり、Integer() = {1, 2, 3, 4, 5}
と定義されているとします。
FirstOrDefault()
関数を次のように適用します。numbers.FirstOrDefault(Function(n) n Mod 2 = 1)
numbers.FirstOrDefault(Function(n) n Mod 2 = 1)
出力は 1
です。
VB 関数: Last
Last()
関数は、指定した条件を満たす、シーケンスの最後の要素を返します。
numbers
という変数があり、Integer() = {1, 2, 3, 4, 5}
と定義されているとします。
last()
関数を次のように適用します。numbers.Last(Function(n) n Mod 2 = 0)
numbers.Last(Function(n) n Mod 2 = 0)
出力は 4
です。
VB 関数: Last or Default
LastOrDefault()
関数は、最後の要素を返します。条件を満たす要素がない場合は既定値を返します。
numbers
という変数があり、Integer() = {1, 2, 3, 4, 5}
と定義されているとします。
FirstOrDefault()
関数を次のように適用します。numbers.LastOrDefault(Function(n) n Mod 2 = 1)
numbers.LastOrDefault(Function(n) n Mod 2 = 1)
出力は 5
です。
VB 関数: Skip
Skip()
関数は、シーケンス内の要素を指定した数だけスキップします。
numbers
という変数があり、Integer() = {1, 2, 3, 4, 5}
と定義されているとします。
Skip()
関数を次のように適用します。numbers.Skip(2).ToArray()
numbers.Skip(2).ToArray()
出力は {3, 4, 5}
です。
VB 関数: Skip While
SkipWhile()
関数は、条件を満たさなくなるまで要素をスキップします。
numbers
という変数があり、Integer() = {1, 2, 3, 4, 5}
と定義されているとします。
SkipWhile()
関数を次のように適用します。numbers.SkipWhile(Function(n) n < 3).ToArray()
numbers.SkipWhile(Function(n) n < 3).ToArray()
出力は {3, 4, 5}
です。
VB 関数: Take
Take()
関数は、シーケンスの先頭から指定した数の要素を返します。
numbers
という変数があり、Integer() = {1, 2, 3, 4, 5}
と定義されているとします。
Take()
関数を次のように適用します。numbers.Take(3).ToArray()
numbers.Take(3).ToArray()
出力は {1, 2, 3}
です。
VB 関数: Take While
TakeWhile()
関数は、条件を満たさなくなるまで要素を返します。
numbers
という変数があり、Integer() = {1, 2, 3, 4, 5}
と定義されているとします。
TakeWhile()
関数を次のように適用します。numbers.TakeWhile(Function(n) n < 4).ToArray()
numbers.TakeWhile(Function(n) n < 4).ToArray()
出力は {1, 2, 3}
です。
VB 関数: Any
Any()
関数は、シーケンス内のいずれかの要素が指定した条件を満たす場合は true
を返します。
numbers
という変数があり、Integer() = {1, 2, 3, 4, 5}
と定義されているとします。
Any()
関数を次のように適用します。numbers.Any(Function(n) n Mod 2 = 0)
numbers.Any(Function(n) n Mod 2 = 0)
出力は true
です。
VB 関数: All
All()
は、シーケンス内のすべての要素が指定した条件を満たす場合に true
を返します。
numbers
という変数があり、Integer() = {1, 2, 3, 4, 5}
と定義されているとします。
All()
関数を次のように適用します。numbers.All(Function(n) n > 0)
numbers.All(Function(n) n > 0)
出力は true
です。
VB 関数: Add item to list
List 関数 AddItemToList()
は、既存のリストに新しい項目を追加します。
[値を設定] ルールを使用して、プロセスとの連携からのデータで編集グリッド コントロール内のレコードを操作するとします。設定する項目は Processes.ALLDATATYPES.out_genericList
です。
AddItemToList(Processes.ALLDATATYPES.out_genericList, MainPage.EditGrid.NewItem)
AddItemToList(Processes.ALLDATATYPES.out_genericList, MainPage.EditGrid.NewItem)
VB 関数: Delete item from list
List 関数 DeleteItemFromList()
は、既存のリストに目を追加します。
[値を設定] ルールを使用して、プロセスとの連携からのデータで編集グリッド コントロール内のレコードを操作するとします。設定する項目は Processes.ALLDATATYPES.out_genericList
です。
DeleteItemFromList(Processes.ALLDATATYPES.out_genericList, MainPage.EditGrid.RowIndex)
DeleteItemFromList(Processes.ALLDATATYPES.out_genericList, MainPage.EditGrid.RowIndex)
VB 関数: Update list item at index
List 関数 UpdateListItemAtIndex()
は、既存のリストの項目を更新します。
[値を設定] ルールを使用して、プロセスとの連携からのデータで編集グリッド コントロール内のレコードを操作するとします。設定する項目は Processes.ALLDATATYPES.out_genericList
です。
UpdateListItemAtIndex(Processes.ALLDATATYPES.out_genericList, MainPage.EditGrid.RowIndex, MainPage.EditGrid.SelectedItem)
UpdateListItemAtIndex(Processes.ALLDATATYPES.out_genericList, MainPage.EditGrid.RowIndex, MainPage.EditGrid.SelectedItem)
- VB 関数: Where
- VB 関数: Select
- VB 関数: Aggregate
- VB 関数: Group By
- VB 関数: Order By
- VB 関数: Join
- VB 関数: First
- VB 関数: First Or Default
- VB 関数: Last
- VB 関数: Last or Default
- VB 関数: Skip
- VB 関数: Skip While
- VB 関数: Take
- VB 関数: Take While
- VB 関数: Any
- VB 関数: All
- VB 関数: Add item to list
- VB 関数: Delete item from list
- VB 関数: Update list item at index