java用if判断输入字符_Java if多个字符串条件判断的简单写法

一般较复杂的写法:if(pouch.getStatus().equals("Finalized") || pouch.getStatus().equals("Ready")

|| pouch.getStatus().equals("Checkout") || pouch.getStatus().equals("Confirmed")

|| pouch.getStatus().equals("Book") || pouch.getStatus().equals("Started")

|| pouch.getStatus().equals("Inital") || pouch.getStatus().equals("Close")) {

// Body

}

1、使用matches实现if(pouch.getStatus().matches("Finalized|Ready|Checkout|Confirmed|Book|Started|Inital|Close")){

//your implementation goes here

}

2、使用字典集合判断

1)在集合中添加多个条件,从中实现 CollectionSet dict = new HashSet();

dict.add("Finalized");

dict.add("Ready");

dict.add("Checkout");

dict.add("Confirmed");

dict.add("Book");

dict.add("Started");

dict.add("Inital");

dict.add("Close");

2)contains检查输入值是否存在于集合中if (dict.contains(pouch.getStatus()))

{

// do your logic

}

3、使用Stream实现判断String status = pouch.getStatus();

if (Stream.of(

"Finalized",

"Ready",

"Checkout",

"Confirmed",

"Book",

"Started",

"Inital",

"Close")

.anyMatch(status::equals)) {

// Body

}

4、使用Arrays.asList()通过数组判断public String[] statusArray = new String[]{ "Finalized", "Ready","Checkout","Confirmed", "Book", "Started", "Inital", "Close"};

if( Arrays.asList(statusArray).contains(pouch.getStatus())){

//do something

}

或// Java 9 way of initializing List with one line

List statuses = List.of("Finalized", "Ready", "Checkout", "Confirmed",

"Book", "Started", "Inital", "Close");

if (statuses.contains(pouch.getStatus())) {

// Body

}

5、使用switch case判断switch (pouch.getStatus()) {

case "Finalized":

case "Ready":

case "Checkout":

case "Confirmed":

case "Book":

case "Started":

case "Inital":

case "Close":

// your code

break;

}


版权声明:本文为weixin_32797725原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。