Dart Setから指定した数だけ値を取得する
![Dart Setから指定した数だけ値を取得する](https://mebee.info/wp-content/uploads/2022/09/dart-890x500.png)
Dartで、Setから指定した数だけ値を取得するコードを記述してます。「take」の引数に取得した個数を指定して使用します。Setの要素数を超えた値を指定した場合は、全ての値が取得されます。また、開始位置を指定して値を取得するには「skip」を使用します。
環境
- OS windows11 home
- Dart 2.18.4
指定した数だけ値を取得
指定した数だけ値を取得するには「 take 」を使用します。
セット.take(数)
※Iterableが返ります
実際に、使用して取得してみます。
void main() {
var s = {'aaa', 'bbb', 'ccc', 'ddd', 'eee'};
print(s.take(2)); // (aaa, bbb)
print(s.take(3)); // (aaa, bbb, ccc)
print(s.take(2).runtimeType); // EfficientLengthTakeIterable<String>
}
実行結果を見ると、指定した数だけ取得されていることが確認できます。
![](https://mebee.info/wp-content/uploads/2022/11/image-290.png)
「0」を指定すると空が、最大数を超えると全て取得されます。
void main() {
var s = {'aaa', 'bbb', 'ccc', 'ddd', 'eee'};
print(s.take(0)); // ()
print(s.take(6)); // (aaa, bbb, ccc, ddd, eee)
}
空のSet
空のSetに使用すると、空の「Iterable」が返ります。
void main() {
var s = {'aaa', 'bbb', 'ccc', 'ddd', 'eee'};
s.clear();
print(s.take(2)); // ()
print(s.take(3)); // ()
}
Setに変換
Setに変換する場合は「toSet()」でSetに変換します。
void main() {
var s = {'aaa', 'bbb', 'ccc', 'ddd', 'eee'};
print(s.take(2).toSet()); // {aaa, bbb}
print(s.take(3).toSet()); // {aaa, bbb, ccc}
print(s.take(2).toSet().runtimeType); // _CompactLinkedHashSet<String>
}
開始位置を指定
開始位置を指定したい場合は「skip」を使用します。
セット.skip(開始位置)
※Iterableが返ります
実際に使用してみます。
void main() {
var s = {'aaa', 'bbb', 'ccc', 'ddd', 'eee'};
print(s.skip(2)); // (ccc, ddd, eee)
print(s.skip(3)); // (ddd, eee)
print(s.skip(2).runtimeType); // EfficientLengthSkipIterable<String>
}
-
前の記事
OPPO Reno7A 開発者向けオプションを設定する 2024.05.29
-
次の記事
Ubuntu24.04でIPアドレスを確認する方法 2024.05.29
コメントを書く