我的问题是-
我有两个字符串变量site_inclusion
和site_exclusion
. 如果site_inclusion
有一个值,那么我不在乎值site_exclusion
包含什么。也就是说,site_inclusion
覆盖site_exclusion
. 但是,如果 site_inclusion
isnull
并且site_exclusion
具有值,那么我想检查site_exclusion
.
更准确地说:
- 如果
site_inclusion
和site_exclusion
都null
设置useTheSynthesizer
为true
; - 如果
site_inclusion
不是null
,它与设置为的regexPattern
then匹配。而且我不在乎.useTheSynthesizer
true
site_exclusion
- if
site_inclusion
isnull
andsite_exclusion
is notnull
和site_exclusion
不匹配regexPattern
then 设置useTheSynthesizer
为 true。
我写了下面的代码,但不知何故,我在 if/else 循环中重复了一些东西。任何满足我条件的代码改进都将不胜感激。
String site_inclusion = metadata.getSiteInclusion();
String site_exclusion = metadata.getSiteExclusion();
// fix for redundant data per site issue
if(site_inclusion != null && site_inclusion.matches(regexPattern)) {
useTheSynthesizer = true;
} else if(site_exclusion != null && !(site_exclusion.matches(regexPattern))) {
useTheSynthesizer = true;
} else if(site_inclusion == null && site_exclusion == null ) {
useTheSynthesizer = true;
}