Optimize code

fongmi
jhengazuki 1 month ago
parent 63a5164c8b
commit 297b9df55d
  1. 16
      app/src/main/java/com/fongmi/android/tv/api/config/LiveConfig.java

@ -32,6 +32,7 @@ import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.Future;
import java.util.function.Function;
import java.util.stream.Collectors;
@ -214,16 +215,11 @@ public class LiveConfig {
}
public void setKeep(List<Group> items) {
List<String> key = new ArrayList<>();
for (Keep keep : Keep.getLive()) key.add(keep.getKey());
for (Group group : items) {
if (group.isKeep()) continue;
for (Channel channel : group.getChannel()) {
if (key.contains(channel.getName())) {
items.get(0).add(channel);
}
}
}
Set<String> key = Keep.getLive().stream().map(Keep::getKey).collect(Collectors.toSet());
items.stream().filter(group -> !group.isKeep())
.flatMap(group -> group.getChannel().stream())
.filter(channel -> key.contains(channel.getName()))
.forEach(channel -> items.get(0).add(channel));
}
public int[] find(List<Group> items) {

Loading…
Cancel
Save