Здравствуйте, снова переполнение стека .. ers, Я создал этот бит кода для последовательного поиска по массиву, чтобы найти значение, в данном случае это имя. Однако я не могу заставить его работать, он не найдет имя, которое я набираю, и всегда возвращает значение -1.Последовательный поиск строк в Java
Когда я сменил все типы на INT и выполнил поиск по возрастному массиву, он работал, поэтому он может иметь какое-то отношение к типу строки? Может кто-нибудь, пожалуйста, помогите мне?
государственной статической силы основных (String [] арг) {
String[] name = {"John", "bert", "Elle", "beth"};
String[] sex = {"Male", "Male", "female", "female"};
int[] age = {18, 25, 22, 36};
int found;
Scanner keyboard = new Scanner(System.in);
System.out.println("Enter name to search: ");
String searchName = keyboard.next();
found = searchNames(name, searchName);
if(found == -1)
System.out.println("Error, not found: " + found);
else
System.out.println("Found At: " + found);
}
private static int searchNames(String[] name, String searchName) {
int i = 0, foundAt = -1;
boolean found = false;
while (!found && i < name.length)
{
if (name[i] == searchName)
{
found = true;
foundAt = i;
}
i++;
}
return foundAt;
}
именно, что вам нужно сделать 'имя [я] .equals (searchName)' вместо этого. – iamnotmaynard