有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

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

我这里有一个数组列表:

 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));

我想做的是浏览一下这个数组列表,只把货车拿出来。有没有办法在阵列中循环,如果车辆类型为“van”,请将其打印到控制台

谢谢


共 (5) 个答案

  1. # 1 楼答案

    for (vehicles vehicles : carsArray) {
        if(vehicles.getS1().equalsIgnoreCase("Van")) {
            System.out.println(vehicles);
        }
    }
    
  2. # 2 楼答案

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

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

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

  3. # 3 楼答案

    它可以是这样的:

    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;
        }
    
        ...
    }
    
  4. # 4 楼答案

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

    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.");
        }
    }
    
  5. # 5 楼答案

    for(vehicles v:  carsArray) {
        // v is vehicle obj inside carsArray
        // you can check the desired condition here
    }