Я использую следующий метод для выполнения линейного поиска на массиве:Зачем использовать пустую строку в Linear Поиск программы Java
private int[] theArray = new int[50];
private int arraySize = 10;
public String linearSearchForValue(int value){
boolean valueInArray = false;
String indexsWithValue = "";
for(int i = 0; i < arraySize; i++) {
if(theArray[i] == value) {
valueInArray = true;
indexsWithValue+= i + " ";
}
printHorzArray(i, -1);
}
if(!valueInArray){
indexsWithValue = "None";
}
System.out.print("The Value was Found in the Following: " + indexsWithValue);
System.out.println();
return indexsWithValue;
}
// Print Array
public void printHorzArray(int i, int j) {
for(int n = 0; n < 51; n++) {
System.out.print("-");
}
System.out.println();
for(int n = 0; n < arraySize; n++) {
System.out.print("| " + n + " ");
}
System.out.println("|");
for(int n = 0; n < 51; n++) {
System.out.print("-");
}
System.out.println();
for(int n = 0; n < arraySize; n++) {
System.out.print("| " + theArray[n] + " ");
}
В методе linearSearchForValue, что цель создания indexsWithValue
в пустой строка. В операторе if indexsWithValue+= i + " ";
пустая строка затем добавляется к i + " "
. Я не понимаю цели выполнения этих двух вещей.
Примечание: Элементы массива генерируются случайным образом.
Почему это индексыWithValue + = i + "", а не indexsWithValue = i + ""? –
, если имеется более одного входа ключа в предоставленном массиве! –