Android if语句 - 如果字符串包含数组中的任何字符串

时间:2014-08-25 03:27:07

标签: java android arrays if-statement comparison

请你帮我一把。

我需要检查一下,检查userCode是否与我的字符串数组中的任何代码匹配,或者oldUser代码是否也匹配数组中的任何代码

String[] code = {"1111", "2222", "3333", "4444", "5555"};

String userCode;
String oldUser;

if (userCode.equals(code) || oldUser.equals(code)) {

RUN 

} else { die }

感谢

4 个答案:

答案 0 :(得分:3)

要实现简单验证,您可以遍历阵列 要么 简单的方法

List< String > code = Arrays.asList( new String[] { "1111", "2222", "3333", "4444", "5555" } );

String userCode;
String oldUser;

if (code.contains(userCode) || code.contains(oldUser)) {

 //doStuff() 

} else { 
    return; 
}

答案 1 :(得分:1)

试试这个

boolean contains = Arrays.asList(arr).contains(str);

答案 2 :(得分:0)

循环数组并使用您的用户值检查每个条目

 String[] code = {"1111", "2222", "3333", "4444", "5555"};

 for (int i = 0; i < code.length; i++) {
     if (userCode.equals(code[i]) || oldUser.equals(code[i])) {
          //do
     }
 }

或使用Arrays.asList()

List<String> codes = Arrays.asList("1111", "2222", "3333", "4444", "5555");

if (codes.contains(userCode) || codes.contains(oldUser)) {
          //do
}

答案 3 :(得分:-1)

使用带有布尔变量

的foreach
boolean isTheSame;
For(String myArrayCodes; code;) {
  if (userCode.equals(myArrayCodes) || oldUser.equals(myArrayCodes))
    isTheSame = true;
  break;
  }
}

if (isTheSame) { // usercode or oldUser is on array
 doSomething();
}
else {
}