Android 是否从列表中删除重复项?
我从适配器中的API中获取了重复项,但我想从适配器中删除这些重复项,并将其打印一次。知道如何操作吗?提前谢谢。 得到:在我的cardview中重复行,但通过API。 想要:只想打印一次并删除那些副本 MyAdapter:Android 是否从列表中删除重复项?,android,laravel,api,android-studio,Android,Laravel,Api,Android Studio,我从适配器中的API中获取了重复项,但我想从适配器中删除这些重复项,并将其打印一次。知道如何操作吗?提前谢谢。 得到:在我的cardview中重复行,但通过API。 想要:只想打印一次并删除那些副本 MyAdapter: @Override public void onBindViewHolder(@NonNull catView holder, int position) { holder.id.setText(oilResponses.get(positio
@Override
public void onBindViewHolder(@NonNull catView holder, int position) {
holder.id.setText(oilResponses.get(position).getId());
}
@Override
public int getItemCount() {
if (oilResponses.size() != 0) {
return oilResponses.size();
}
return 0;
}
主要活动:
private void oilList() {
Api.getClient().do_oil(CAR_ID)
.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(Schedulers.io())
.subscribe(new Observer<List<OilResponse>>() {
@Override
public void onSubscribe(Disposable d) {
}
@Override
public void onNext(@NotNull List<OilResponse> responses) {
oilAdapter = new OilAdapter(responses);
oilRecycler.setAdapter(oilAdapter);
}
@Override
public void onError(@NotNull Throwable e) {
}
@Override
public void onComplete() {
}
});
}
private void oilList(){
Api.getClient().do_oil(汽车ID)
.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(Schedulers.io())
.订阅(新观察员){
@凌驾
认购的公共无效(一次性d){
}
@凌驾
public void onNext(@NotNull列表响应){
油适配器=新油适配器(响应);
油回收器。设置适配器(油适配器);
}
@凌驾
公共无效onError(@NotNull Throwable){
}
@凌驾
未完成的公共空间(){
}
});
}
您可以尝试将它们保存在集中,而不是列表中,这基本上是一样的,但在一个集中,每个对象都可以保存一次,因此即使您愿意,也不能有重复的对象。嘿,扎伊迪,欢迎来到stackoverflow。恐怕你的问题有很多代码,请尝试创建一个。@Itaisz谢谢你的回答,我已经更新了我的问题。为什么不按id过滤?您好,实际上并没有过滤,我的cardview中有一些只显示ID的项目,但我从API中得到了重复的项目,所以我想避免从我这边得到这些重复的项目。大家好,我尝试将列表转换为Set,但我们都知道,在BindViewHolder上的适配器中,我们使用List.get(position.getId();但有了Set,我就无法得到它。