无法对数组类型 String[] 调用 split(String)

彼得·彭佐夫

我想实现一个将 ip 检查到数组中的代码。我试过这个:

        // 123.11.1.1, 123.1.1.12, 123.322.12.1
        String[] list = merchant.getAllowed_ip_address().split(",");

        String ip = request.getRemoteAddr();
        for (ip : list.split(",")) {
            if (!ip.trim().equals(request.getRemoteAddr().trim())) 
            {
               // Not in list
            }
        }

但我明白了Cannot invoke split(String) on the array type String[]你知道我该如何解决这个问题吗?

吉布

你不能split在列表上,一旦你拆分了字符串,那么你就有了一个包含所有 IP 的数组,然后你可以检查

    // 123.11.1.1, 123.1.1.12, 123.322.12.1
    String[] list = merchant.getAllowed_ip_address().split(",");

    String ip = request.getRemoteAddr();

    for (String allowedIP : list) {
        if (!ip.trim().equals(allowedIP.trim())) {
            // Not in list
        }
    }

此外,为了简单起见,您可以这样做

String ip = request.getRemoteAddr();
boolean notExist = Arrays.stream(merchant.getAllowed_ip_address().split(","))
                .map(String::trim)
                .noneMatch(ip::equals);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

无法对数组类型 String[] 调用 charAt(int)

StrUtils.SplitString无法按预期工作

如何在 Java 中对数组类型 String[] 调用 substring(int, int)

得到此错误“无法在数组类型String []上调用set(int,String)”

无法调用非函数类型'String'的值

在Dart中,无法使用int调用(int)=> String类型的函数

无法使用类型为((String)'的参数列表调用'value'

无法在原始类型void上调用sendKeys(String)

无法使用类型为((String)'的参数列表调用<method>

无法使用类型'(String)'的参数列表调用'append'

无法使用类型为((String)'的参数列表调用'enumerate'

无法在原始类型int上调用equals(String)

无法使用(`String`,`Array <String>`)调用`++`

无法将调用结果类型“Set<String>”转换为预期类型“String”错误

在Swift 2.0中,无法使用类型为(String,[String])的参数列表调用`join`

PromiseKit 6:无法使用类型为(((String,String)-> Promise <Data>)'的参数列表调用'then'

无法在Android中调用String.isEmpty()

无法为类型为((String?)'的参数列表调用类型为'Double'的初始化程序

无法为类型为“ String”的参数列表的CGFloat类型调用初始化程序

无法使用类型为“(Int?)”的参数列表调用类型“String”的初始值设定项

无法调用类型的值

无法在C#soap调用中将类型字符串隐式转换为string []

无法使用类型为“(String)”的参数列表调用“isEqualToString”(来自闭包)

无法在我的firstViewController中使用类型为'(String)'的参数列表调用'append'

iOS9-无法使用类型为((String)'的参数列表调用'count'

无法使用类型为“(GenericDM.Type, from: String?)”的参数列表调用“decode”

无法在数组类型(类)MitarbeiterListe []上调用方法getSize()

无法在数组类型int [] []上调用splice(int,int)

处理/ java:无法在数组类型boolean []上调用length()