2016-04-12 3 views
-5

Как я могу прочитать элементы в массиве и проверить, содержит ли они строку. Что-то вроде метода indexOf?Как проверить, имеет ли конкретный элемент в массиве char

String[] myArray = {"Jo [M]", "Sally [F]"}; 
Male = "[M]" 
for(i = 0; myArray.length(); i = i + 1){ 
if(myArray[i].indexOf(Male){ 
System.out.println("Contains M") 

//Do stuff 

} 
+5

'MyArray [I] .Contains (Мужской) '.. вы действительно должны показать больше исследований .. – Maljam

+0

Что происходит, когда вы пытаетесь скомпилировать и запустить этот код? –

+0

Честный бог Я искал по крайней мере 15 переполнений стека, ни один из которых я не мог нарисовать. Спасибо –

ответ

2

Вам нужно логическое условие в вашем if, String.indexOf(String) возвращает int. Это

if(myArray[i].indexOf(Male){ 

должно быть что-то вроде

if (myArray[i].indexOf(Male) >= 0) { 

или вызов String.contains(CharSequence) как

if (myArray[i].contains(Male)) { 
1

Там в String.contains(), который предназначен для этого. Вы можете использовать его как этот

if(myArray[i].contains(Male){ 
    //found variable Male in array 
} 

Если вы хотите использовать String.indexOf, то вам нужно проверить, если возвращаемый индекс является положительным целым числом, как этот

if(myArray[i].indexOf(Male) >= 0){ 
    //found variable Male in array 
} 
Смежные вопросы