相关疑难解决方法(0)

Groovy:如何检查字符串是否包含数组的任何元素?

我有一个字符串数组,pointAddress我想检查每个条目是否包含来自另一个数组的字符串,validPointTypes.

def pointAddress = ['bacnet://240101/AV:3', 'bacnet://240101/BV:9', 'bacnet://240101/AV:7', 'bacnet://240101/BALM:15']
def validPointTypes = ['AV', 'AI', 'AO', 'ANI', 'ANO', 'BV', 'BI', 'BO', 'BNI', 'BNO']
Run Code Online (Sandbox Code Playgroud)

现在我只是有一个巨大的if声明.

j = pointName.size()
for(j=j-1; j>=0;j--) {
    if(pointAddress[j]) {
        if(pointAddress[j].contains('AV') || pointAddress[j].contains('AI') || 
            pointAddress[j].contains('AO') || pointAddress[j].contains('ANI') || 
            pointAddress[j].contains('ANO') || pointAddress[j].contains('BV') || 
            pointAddress[j].contains('BI') || pointAddress[j].contains('BO') || 
            pointAddress[j].contains('BNI') || pointAddress[j].contains('BNO')) {
        } else {
            pointAddress.remove(j)
            pointName.remove(j)
            m++
        }
    } else {
        pointName.remove(j)
        m++
    }
}
Run Code Online (Sandbox Code Playgroud)

必须有更好的方法,对吗?

arrays string groovy

13
推荐指数
1
解决办法
8万
查看次数

标签 统计

arrays ×1

groovy ×1

string ×1