java - 循环遍历 Arraylist 并显示满足 Java 条件的对象
问题描述
我将某些对象存储在 ArrayList 中。每个对象都有 5 个变量(两个字符串、两个整数和一个双精度)。
我正在尝试编写的方法将要求用户输入一个值(双精度)。然后它将显示 ArrayList 中的所有对象,其双精度等于或大于用户输入的双精度。
我一直在尝试使用 for: each 循环,但我不知道如何向其中添加任何条件,以便获得我想要的结果。
关于如何像这样对 ArrayList 进行排序的任何提示都会非常棒,我真的被卡住了。arrayList 称为 listOfthings 并包含 String nam、String bread、int alt、int wegtt 和 double townLength(这是我希望它用作条件的值)这是我到目前为止的代码:
public void sortmogs() {
System.out.println("Smallest thing to display?>");
listTownLength = Input.readInt();
for (Mog mog : listOftowns) {
if (dog.getTownLength() >= listTownLength) {
System.out.println(listOftowns);
}
}
}
但是,如果我将两个城镇添加到列表中,城镇长度分别为 2.5 和 5,然后添加用户输入 3,它会显示整个 arrayList ,因为其中一个 pogs 满足条件(我想)
解决方案
当您的 if 条件满足时,您将发出整个列表:
if (dog.getTownLength() >= listTownLength) {
System.out.println(listOftowns);
}
相反,发出满足条件的元素:
if (dog.getTownLength() >= listTownLength) {
System.out.println(dog);
}
推荐阅读
- python - Elasticsearch - 计算索引中所有文本中的单词出现次数
- sql - SNOWFLAKE 数据库中关于主键错误的合并语句
- python - Bandit B404 子流程导入的安全问题?
- python - 如何在numpy中矩阵乘以3个矩阵?
- android - 如何转到另一个选项卡,但保留上一个选项卡
- javascript - 为什么 Javascript 的 FileReader 它不维护 .csv 扩展名
- image-segmentation - 使用傅里叶变换或霍夫变换确定二值图像线的对齐方式?
- javascript - 如何在 Google 地图中显示最新的卫星图层
- flutter - 扑医生失败
- pyspark - pyspark 数据框获取分区键