Мы можем сказать, что даже если одна проверка на равенство не пройдена, массив не является палиндромом.
Поэтому вам нужно разрывать цикл только тогда и там.
char a1[] = {'R', 'A', 'D', 'A', 'K'};
boolean response = true;
for (int i = 0; i < a1.length / 2; i++)
{
if (a1[i] != a1[a1.length - 1 - i])
{
response = false;
break;
}
}
System.out.println(response);
"для каждого... в" выполняет итерации указанной переменной по всем значениям свойств указанного объекта.
Пример:
var sum = 0;
var obj = {prop1: 5, prop2: 13, prop3: 8};
for each (var item in obj) {
sum += item;
}
print(sum); // prints "26", which is 5+13+8
"для... в" выполняет итерации указанной переменной по всем свойствам объекта, в произвольном порядке.
Пример:
function show_props(obj, objName) {
var result = "";
for (var i in obj) {
result += objName + "." + i + " = " + obj[i] + "\n";
}
return result;
}
Примечание 03.2013, for each... in
циклы удерживаются от использования. 'Новый' синтаксис, рекомендуемый MDN, for... of
.
Эта демонстрация должна, надо надеяться, проиллюстрировать различие.
var myObj = {
a : 'A',
b : 'B',
c : 'C'
};
for each (x in myObj) {
alert(x); // "A", "B", "C"
}
for (x in myObj) {
alert(x); // "a", "b", "c"
alert(myObj[x]); // "A", "B", "C"
}
Прочитайте превосходную документацию MDC.
Первое для нормального цикличного выполнения по наборам и произвольно по свойствам объекта.
Для... в цикле не выполняет итерации по встроенным свойствам. Они включают все встроенные методы объектов, такие как indexOf метод Строки или toString метод Объекта. Однако цикл выполнит итерации по всем пользовательским свойствам (включая любого, которые перезаписывают встроенные свойства).
Для... в цикле выполняет итерации по свойствам объекта в произвольном порядке. Если свойство изменят в одном повторении и затем посетят в более позднее время, то значение, выставленное циклом, будет своим значением в то более позднее время. Свойство, которое удалено, прежде чем его посетили, затем не посетят позже. Свойства, добавленные к объекту, по которому происходит повторение, можно или посетить или опустить от повторения. В целом лучше не добавить, изменить, или удалить свойства из объекта во время повторения, кроме свойства, в настоящее время будучи посещенным; нет никакой гарантии, посетят ли добавленное свойство, посетят ли измененное свойство прежде или после того, как оно изменяется, или посетят ли удаленное свойство, прежде чем оно будет удалено.
Последний позволяет Вам циклично выполняться по свойствам объекта.
Выполняет итерации указанной переменной по всем значениям свойств объекта. Для каждого отличного свойства выполняется указанный оператор.
В дополнение к другим ответам имейте в виду это for each...in
не часть стандарта ECMA и также не включена в предстоящий выпуск 3.1. Это было представлено в JavaScript 1.6, который является расширением ECMAScript3 Mozilla Foundation.
Согласно связанной странице Wikipedia, это только реализовано в Firefox 1.5 + и Safari 3.x (+?).