Java 如何使用字符串从数组列表中获取数据

Java 如何使用字符串从数组列表中获取数据,java,arrays,sorting,Java,Arrays,Sorting,我这里有一个数组列表: ArrayList <vehicles> carsArray = new ArrayList<vehicles>(); carsArray.add(new vehicles ("CAR","Peugot","3008",12500.00)); carsArray.add(new vehicles ("CAR","BMW","316",4995.00)); carsArray.add(new vehicles ("CAR",

我这里有一个数组列表:

 ArrayList <vehicles> carsArray = new ArrayList<vehicles>();
    carsArray.add(new vehicles ("CAR","Peugot","3008",12500.00));
    carsArray.add(new vehicles ("CAR","BMW","316",4995.00));
    carsArray.add(new vehicles ("CAR","Ford","Fiesta",12995.00));

    carsArray.add(new vehicles ("VAN","P","3008",22500.00));
    carsArray.add(new vehicles ("VAN","B","316",24995.00));
    carsArray.add(new vehicles ("VAN","F","Fiesta",22995.00));
ArrayList carsArray=new ArrayList();
添加(新车(“汽车”、“标致”、“3008”、12500.00”);
添加(新车(“汽车”、“宝马”、“316”、4995.00”);
添加(新车(“汽车”、“福特”、“嘉年华”,12995.00));
添加(新车(“厢式货车”、“P”、“3008”、22500.00”);
添加(新车(“厢式货车”、“B”、“316”、24995.00”);
添加(新车(“货车”、“F”、“嘉年华”,22995.00));
我想做的是浏览一下这个数组列表,只把货车拿出来。是否有办法在阵列中循环,如果车辆类型为“van”,则将其打印到控制台


感谢在
vehicles
类中,您应该为该字符串设置一个getter,然后您可以轻松地检查对象是否具有“VAN”字符串或其他内容

class Vehicles {
  ...
  ...

   public boolean isVan() {
       return "VAN".equals(myType);
   }

}

请遵循Java命名约定,并将类名更改为以大写字母开头。

是的。ArrayList可以对类似数组的循环使用高级
。这样做:

for (vehicles vehicles : carsArray) {
    if(vehicles.getS1().equalsIgnoreCase("Van")) {
        System.out.println(vehicles);
    }
}
for (vehicles vehicle : carsArray) {
    if (vehicle.getType().equals("VAN")) { //Assuming get type method exists
         System.out.println("Vehicle " + vehicle.getName() + " is a van");
    }
}
或者,如果您需要索引:

for (int i = 0; i < vehicle.size(); i++) {
    if (carsArray.get(i).getType().equals("VAN")) {
        System.out.println("Vehicle at index " + i + " is a van.");
    }
}
for(int i=0;i
它可以是:

for(int i=0; i<carsArray.size(); i++) {
    if(carsArray.get(i).getType().equals("VAN")
        System.out.println(carsArray.get(i).getModel());
}
class Vehicle {
    String type;
    String brand;
    String model;
    String speed;

    private String getType() {
        return type;
    }

    private String setType(String vehType) {
        type = vehType;
    }

    ...
}

我和你发布的内容一模一样。竖起大拇指!;)我也向你竖起大拇指!(:有很多选择。你真的应该遵循java命名约定,让类名以大写字母开头。即车辆,而不是车辆。好问题,尽管谷歌搜索可能会给你点击率。我会建议VAN是枚举的一部分,但这超出了范围
class Vehicle {
    String type;
    String brand;
    String model;
    String speed;

    private String getType() {
        return type;
    }

    private String setType(String vehType) {
        type = vehType;
    }

    ...
}