'Check if user input is equal to string array

I want to check if user input is equal to the array, if not toast error message when pressing a button. I am not sure if I should check input outside the button and then use an if !equals inside button to toast the message. Here is my attempt

I have this array in strings.xml

<string-array name="people">
        <item>JHON</item>
        <item>MARIE</item>
        <item>ALBERT</item>
        <item>ALEX</item>
    </string-array>

Activity.java:

String[] peopleArr =getResources().getStringArray(R.array.people);
EditText userinput=findViewById(R.id.editTextUserinput);

Button find = findViewById(R.id.findBtn);
        find.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
            for (int i = 0; i <= peopleArr.length - 1; i++) {
                    if (!userinput.getText().toString().equals(peopleArr[i])) {
                        
                        Toast.makeText(getApplicationContext(), "Invalid user", Toast.LENGTH_SHORT).show();
                    }
                }
}

This is wrong because it is toasting invalid user 4 times when the button is pressed.



Solution 1:[1]

this code check user, if can finde user will Toast: Valid User otherwise will Toast: Invalid User

 String[] peopleArr =getResources().getStringArray(R.array.people);
EditText userinput=findViewById(R.id.editTextUserinput);

Button find = findViewById(R.id.findBtn);
    find.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        Boolean userIsFounded = false;
        for (int i = 0; i <= peopleArr.length - 1; i++) {
            if (userinput.getText().toString().equals(peopleArr[i])) {
                userIsFounded = true;
                break;
            }
        }
        String message  =  (userIsFounded)? "Valid User":"InValid User";
        Toast.makeText(getApplicationContext(), message, Toast.LENGTH_SHORT).show();

    }

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 soheil ghanbari