У меня проблема с пониманием того, как выполняется следующий код. Я ищу пример для 1/2 казни.
Код:
public class StringArray {
public static String getFirstString(String[] values) {
if (values.length == 0) {
return "";
}
String result = values[0];
for (int i=1; i<values.length; i++) {
if (result.compareTo(values[i]) > 0) {// i.e. result > values[i]
result = values[i];
}
}
return result;
}
public static void main(String[] args) {
String[] nume= {"Andrei", "Andreea", "Andrea",
"Marius", "Marcus", "Marcel", "Florin"};
System.out.println(getFirstString(nume));
}
}
По сути, обрабатывается ли первый элемент?
Сначала это Андрей.
1.Андрей попадет в первый Если? values.length
не должно быть 7?
1.1 «Значение», являющееся ссылкой на параметр, должно указывать на array [] name , которое дается в основном методе, верно?
Следовательно, Андрейбудет сравниваться с Андреей, но отсюда, почему Андрей больше Андреи? Мне тяжело с if (result.compareTo(values[i]) > 0)
.