Skip to content

Instantly share code, notes, and snippets.

@rikuTanide rikuTanide/for3.dart
Last active Oct 9, 2017

Embed
What would you like to do?
まずフォローしているユーザーを配列に抽出してから続きの作業をする
/// followは全ユーザのフォロー・フォロワーの関係が入っているリスト
List<Tweet> tweets(String uid, List<Follow> follows, List<Tweet> tweets,
List<ReTweet>reTweets) {
var result = <Tweet>[];
// フォローしているユーザのUserIDを抽出
var followUserIDs = <String>[];
for (var follow in follows) {
if (follow.from != uid) {
followUserIDs.add(follow.to);
}
}
// フォローしているユーザのTweetを抽出
for (var followUserID in followUserIDs) {
for (var tweet in tweets) {
if (tweet.uid == followUserID) {
result.add(tweet);
}
}
}
// フォローしているユーザーのReTweetを抽出
for (var followUserID in followUserIDs) {
for (var reTweet in reTweets) {
if (reTweet.uid != followUserID) {
continue;
}
for (var tweet in tweets) {
if (reTweet.tweetID == tweet.tweetID) {
result.add(tweet);
break;
}
}
}
}
return result;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.