Android:检查字符串是否包含数组中的任何值的方法?

Eva*_* R. 1 java arrays string

我已经尝试搜索"Java检查字符串是否包含数组中的值",以及其他变体,但没有想出任何东西,所以希望有人可以帮助我.我有以下代码要清理:

if (dateint.contains("th")){
        dateint=dateint.substring(0, dateint.length()-2);
    } else if (dateint.contains("st")){
        dateint=dateint.substring(0, dateint.length()-2);
    } else if (dateint.contains("nd")){
        dateint=dateint.substring(0, dateint.length()-2);
    } else if (dateint.contains("rd")){
        dateint=dateint.substring(0, dateint.length()-2);
    }
Run Code Online (Sandbox Code Playgroud)

我想知道我是否可以执行以下操作(不是真正的代码,而是在代码中思考):

String[] ordinals = {"th", "st", "nd", "rd"};
if dateint.contains(ordinals) {
dateint=dateint.substring(0, dateint.length()-2);
}
Run Code Online (Sandbox Code Playgroud)

基本上检查数组中的任何值是否在我的字符串中.我正在尝试使用最少量的代码,以便它看起来比丑陋的if/else块更清晰,并且不使用for/next循环...这可能是我唯一的选择.

Kni*_*edi 6

试试这个:

for (String ord : ordinals) {
    if (dateint.contains(ord)) {
        dateint = dateint.substring(0, dateint.length() - 2);
        break;
    }
}
Run Code Online (Sandbox Code Playgroud)