如果我有与metadatas相关的产品列表,如价格,促销等,我如何过滤说明。我将如何根据促销的价格范围进行过滤...
public class Products {
private String name;
private int weight;
private String promotion;
private String nutrition;
private int price;
//constructor ,, getter, setters
}
我会将产品列表传递给arraylist
,并希望按价格或促销进行过滤,并且只显示符合该条件的产品。
答案 0 :(得分:3)
如果您正在使用Java8,则可以使用Streams API创建从现有列表中过滤的新列表。假设您在名为list的变量中有一个ProductsList的ArrayList,而您只想要价格等于30的那个,那么它看起来就像这样......
final List<Prouduct> filtered = list.stream()
.filter((elt) -> elt.getPrice() == 30)
.collect(Collectors.toList())
答案 1 :(得分:0)
修改强> 您还必须将变量的访问修改器从私有更改为公共。
您必须迭代数组中的每个对象,并检查值是否与过滤器匹配
示例:
int filter=10;
for(int x=0;x<array.length;x++){
if(array[x].weight==filter){
System.out.println(array[x].name);
}
}
其中array
是产品类