Dart Streamクラスのプロパティについてメモ書き。
Dart Streamクラスのプロパティは以下の通り。
型 | プロパティ名 | 説明 |
---|---|---|
Future<T> | first | 最初の要素を受信後、リッスンを停止する。Streamが空の場合エラーになる。 |
int | hashCode | オブジェクトのハッシュコードを取得する。 |
bool | isBroadcast | StreamがBroadcastの場合はtrue、異なる場合はfalseを返す。 |
Future<bool> | isEmpty | Streamに要素が含まれない場合はtrue、含まれる場合はfalseを返す。 |
Future<T> | last | 最後の要素を受け取る。Streamが空の場合エラーになる。 |
Future<int> | length | 受信したStreamの要素数。 |
Type | runtimeType | 受信したオブジェクトの型。 |
Future<T> | single | 1つの要素を返す。Streamの要素が空、もしくは複数の場合エラーになる。 |
コーディングでプロパティの値を確認。
void main() {
final streamSingle = Stream.fromIterable(["single"]);
final stream = Stream.fromIterable(["true1", "true2"]);
stream.first.then((value) => print("first:$value"));
stream.last.then((value) => print("last:$value"));
stream.length.then((value) => print("length:$value"));
stream.isEmpty.then((value) => print("isEmpty:$value"));
streamSingle.single.then((value) => print("single:$value"));
print("hashCode:${stream.hashCode}");
print("runtimeType:${stream.runtimeType}");
print("isBroadcast:${stream.isBroadcast}");
}
実行結果。
hashCode:983141398
runtimeType:_MultiStream<String>
isBroadcast:false
first:true1
isEmpty:false
single:single
last:true2
length:2
コメント