首页 > 解决方案 > 如何在我的数组列表中打印字符串值而不打印空值?

问题描述

cars =new ArrayList<Car>();
cars.add(new Car(2016,"honda","civic"));
cars.add(new Car(2017,"Lamborghini","aventador")); 
cars.add(new Car(2000,null,"caravan"));
cars.add(new Car(2010,"dodge",null));

如何打印和跳过这样的空值:

hondacivicLamborghiniaventadorcaravandodge

标签: javastringarraylistnull

解决方案


不要添加 null只需将其替换为 ""

例子 :

cars.add(new Car(2000,"","caravan"));
cars.add(new Car(2010,"dodge",""));

代码 :

List<Car> cars = new ArrayList<Car>();

cars.add(new Car(2016,"honda","civic"));
cars.add(new Car(2017,"Lamborghini","aventador")); 
cars.add(new Car(2000,"","caravan"));
cars.add(new Car(2010,"dodge",""));

for(Car c : cars) {
 System.out.print(c.getCompanyName() + "" + c.getCarName());
}

或者将代码更新为此以跳过null值:

for(Car c : cars) {
   String data = ((c.getCompanyName() != null) ? c.getCompanyName(): "") + ((c.getCarName() != null) ? c.getCarName() : ""); 
   System.out.print(data);
}

推荐阅读