java中的if else 的替换写法,除了switch 语句
时间: 2023-10-28 08:05:54 浏览: 111
如何优雅的替换掉Java代码中的if else
5星 · 资源好评率100%
除了使用`switch`语句,Java中还可以使用`if else`的替代写法是使用`Map`。具体做法是将不同条件下的代码块封装成为不同的`Runnable`对象,将这些`Runnable`对象以`key-value`的形式存储在`Map`中,然后根据条件从`Map`中获取对应的`Runnable`对象并执行即可。
示例如下:
```java
Map<Boolean, Runnable> map = new HashMap<>();
map.put(true, () -> {
// 如果条件为true,执行这里的代码块
});
map.put(false, () -> {
// 如果条件为false,执行这里的代码块
});
boolean condition = true; // 假设这是一个if else语句中的条件表达式
map.get(condition).run(); // 根据条件获取对应的Runnable对象并执行
```
需要注意的是,这种替代写法只适用于`if else`语句中的两个分支,如果有多个分支,那么使用`Map`的写法就过于繁琐了,此时还是应该使用`if else`或`switch`语句。
阅读全文