Уроки Java для начинающих | #8 - Циклы (For, While, Do while)
1) Урок на сайте itProger: itproger.com/course/java/8
В этом уроке мы с вами изучим циклы в языке Java. Мы научимся использовать циклы For, While, Do while, а также рассмотрим операторы continue, break и return.
✔ Основной сайт: itproger.com/
✔ -------------
Вступай в группу Вк - prog_life
Группа FaceBook - goo.gl/XW0aaP
Instagram: / gosha_dudar
Telegram: t.me/itProger_official
Страничка Twitter - / goshadudar
- Уроки от #GoshaDudar 👨🏼💻
- Все уроки по хештегу #GoshaJava
Пікірлер: 250
ГЛАВНЫЕ ОТЛИЧИЯ ЦИКЛОВ: FOR = КОГДА ТЕБЕ ИЗВЕСТНО КОЛИЧЕСТВО ПРОГОНОВ ( РАЗ ) WHILE = КОГДА НЕ ИЗВЕСТНО! (например цикл будет гонять пока человек не нажмет какую ту клавишу) DO WHILE = то жк что и WHILE только он ВСЕГДА прогонит 1 раз НЕСМОТРЯ НА УСЛОВИЯ.
@user-kv5fw7xz9c
3 жыл бұрын
*while* - цикл с предусловием. Сначала проверяется условие, а потом выполняется код. *do while* - цикл с постусловием. Сначала выполняется код, а потом проверяется условие.
@user-ch7mn3km9w
2 жыл бұрын
Не обязательно. Первый аргумент for выполняется один раз. Второй аргумент цикла может содержать любое условие, и выполняется пока true. Третий аргумент выполняется каждый такт цикла. То есть for с пустым первым и третьим аргументом это while)
@oleg12395
2 жыл бұрын
for (int i = 0; i System.out.println (i) } почему первое значение выводится 0 ? Ведь мы объявили переменную i = 0, потом сразу же увеличили её на единицу и только потом вывели выражением System.out.println. Поидее первое значение должно быть 1
@kuzagamerkusokasfalta4099
2 жыл бұрын
@@oleg12395 нее - System.out.println по сути чтобы ты вообще видел че выйдет) ты не присвоил переменной сразу же единицу - это уже цикл делает начиная от нуля - ведь переменная имеет значение 0
@z_fort
11 ай бұрын
@@oleg12395 потому что переменная увеличивается после выполнения тела цикла.
Моя жизнь и поступки как do{ }while() Сперва делаю, потом думаю)
@forgemaxlife4324
2 жыл бұрын
ахахаахах, топ комент)))
@constantinvoinu3932
2 жыл бұрын
System.out.print("ЖИЗА");
Стало интересно, какими горячими клавишами происходит преобразование строк в комментарии, может кому-то тоже будет: Ctrl + / комментирует все выделенные строки, но каждую по отдельности, в стиле // (Работает в английской раскладке. Если в русской, то свернёт в троеточие.) На MAC OS, соответственно, не Ctrl + /, а Cmd + /. Раскомментирование аналогично.
@Asadulla_kasimov
5 жыл бұрын
Для таких людей, как ты, в раю отдельные места
@andrewvyakhirev6233
5 жыл бұрын
Спасибо!)
@dfgdfg5386
5 жыл бұрын
Спасибо вам большое, всех благ вам!!!
@user-xtkjdtr16
5 жыл бұрын
Может быть дело в фамилии!!!
@valentyndieiev4967
4 жыл бұрын
Спасибо огромное!
Вообще return используется в функции для возврата значения и заодно прерывает ее. Так что утверждение будто break и return - одно и то же - неверное. Просто в данном примере функция ничего не возвращает, отсюда и разницы никакой нет.
Спасибо) Для меня подача материала - лучшая, все основное без воды, все, что нужно при первых касаниях к языку) Спасибо)
Всем привет, начал с восьмого урока, здорово, думаю что просмотрю с первого🙂
хорошо объясняешь друг, спасибо
спасибо за классные уроки
Гоша спасибо что ты есть и все это объясняешь .... класс
Спасибо за урок. Лайк.
Да реально очень хорошо объясняет, молодец =)
@daytona2786
3 жыл бұрын
ты это серьезно ?
@who-1880
3 жыл бұрын
@@daytona2786 а чё?
То что надо ! Спасибо
Спасибо!
Вы очень хорошо обесняйте респект вам
Спасибо за урок!!! У меня все получилось
Спасибо большое
8:42 - Ору :D
return выйдет из метода, а не из цикла. Таким образом, если у тебя есть код после цикла, а внутри цикла есть return, то выйдя из return, код после цикла выполняться не будет. А после break - будет.
@user-sp1bk7pm8i
4 жыл бұрын
Зачем вы зашли на этот видео курс? Если вы учите автора, который обучает java, значит вы знаете этот язык программирования.
@Vanchick87
4 жыл бұрын
Хорошо программируете ?
@user-jy7oq7uc1j
4 жыл бұрын
@@user-sp1bk7pm8i заебал писать
@EldarKhaitov
4 жыл бұрын
@@user-sp1bk7pm8i Зачем-то зашел, какая разница, если комментарий его верный. У меня встречный вопрос: зачем вы зашли, если вы явно хотите не поучиться, а... а хрен знает Кстати, за ретурн влепил ему диз, автор явно не в курсе, а учит((
@user-hz3tr9bu1h
3 жыл бұрын
Парень, заведи канал про продвинутый Java, я сам с радостью просмотрю продвинутые уроки =) а то в основном совсем базовые кругом.
не слушайте его насчет скобок, учитесь их ставьть всегда, иначе будут ероры.
@sambadi_8957
4 жыл бұрын
их не всегда надо, зачем ставить, если одна строка всего
@user-hf3hp2vc9s
3 жыл бұрын
@@sambadi_8957 ммм, человек понимающий говорит, как бы я тоже, потом в 100к строчках игры будет ошибка, и тебя искать надо, ведь эти скобки важны:)
@user-bw9eu4ln1i
3 жыл бұрын
@@user-hf3hp2vc9s Даже если не будет еррора - не будьте овнокодерами, ставьте {} и потом сами себе скажете "спасибо".
@xlebza0928
3 жыл бұрын
Не обязательно
@v.miller
2 жыл бұрын
Все верно, нужно приучать себя писать красивый и понятный код. Все блоки оформлять фигурными скобками. Иначе эту кашу потом читать невозможно
класс спосибо
Всё понятно объясняет, спасибо! А как подсчитать сумму чётных чисел в диапазоне, чтобы например получилось в сумме 30, через эти циклы? Можете рассказать....
самый лучший видео курс из всех
Классная у тебя собачка на фоне!
Пздц, смотрю платные от skillbox, а потом тут пересматриваю тоже самое но более разжевано... спрашивается за какой хер деньги берут
@AnCap53
3 жыл бұрын
Что Skillbox, совсем бесполезный?
@tnnknn5776
3 жыл бұрын
@@AnCap53 ну почти
@markgorbaichuk8290
3 жыл бұрын
Я который поступил в университет:🗿🗿🗿
@user-kv5fw7xz9c
3 жыл бұрын
@@markgorbaichuk8290 Ну, ты попал, чувак, ты попал!
добавлю от себя про цикл for такого плана: public class Main { public static void main(String[] args) { int[] arr = {2, 4, 6, 8, 10}; for (int i : arr) { System.out.println(i); } } } в цикле создается переменная і, которая итерируется по массиву arr и виполняет код внутри цикла для каждого значения в массиве. то есть на первой итерации і = 2, на второй - 4, на 3 - 6 и так далее
int thanks = 0; while (thanks System.out.println("Спасибо!"); }
Всем привет! Решил параллельно видео курсу учить JAVA по книге Java for beginner's и столкнулся с таким блоком кода: do{ ignore = (char) System.in.read(); }while (ignore !=' '); Без него программа как бы несколько раз пробегает цикл "DO" без остановки. class Guess4 { public static void main(String [] args) throws java.io.IOException { char ch, ignore; do{ System.out.println("Enter the Letter:"); ch = (char) System.in.read(); do{ ignore = (char) System.in.read(); }while (ignore !=' '); if (ch=='K') System.out.println("You are right"); else if (ch
ВАу капец ты поменялся, смотрю твое новое видео и это. ПОМенялся
остача -.-
@MrLeshenka
7 жыл бұрын
Может быть он с Украины?
@user-wx9kt1vc5p
7 жыл бұрын
Funny Videos у него в твиттере написано что он с Украины
@dmitryokhremenko5446
6 жыл бұрын
Даже в Украине говорят остаток)))
@vladesu
5 жыл бұрын
Неа , остача говорят
@oleg4260_
5 жыл бұрын
Он украинец, не придирайся. Ты же всё понял, верно?
для тех кто вдруг не знает sout пишете и жмакайте enter
@user-bw9eu4ln1i
3 жыл бұрын
psvm тоже
Если не сложно, скажите есть ли эквивалент foreach из C# в java?
Единственное, что я не понял из твоих уроков на тему циклов, переменных и т. п., это то, как в if записать два и больше условий P. S. Уроки реально годные, всё предельно понятно, считай за этот вечер я просмотрел 8 уроков и всё понял. Закреплять буду завтра. Огромное тебе спасибо, лови лайки
@comlancomtop4104
2 жыл бұрын
это проходили в предыдущем уроке. if condition && another condition
Уроки годные. Как раз для такого школьника как я) Подписка и лайк. Всё интересно и понятно. Теперь знаю азы Java.
@stepankoltsov296
6 жыл бұрын
лол,я тоже школьник учусь кодить
@jayxzn2226
5 жыл бұрын
А в каком ты классе?
@user-rp1yn5pu9m
3 жыл бұрын
@@jayxzn2226 я в 5 и начинаю учить джаву
у меня при использовании команды break в цикле while на консоли выводится "reached end of file while parsing". Многократно сверял с оригиналом, но почему-то программе не нравится последняя фигурная скобка
Это не уроки Java для людей, это Гоша для себя решил повторить курс . Причем быстро и чтобы никто ничего не понял
@user-kv5fw7xz9c
3 жыл бұрын
ДА ЧЕГО ТУТ НЕПОНЯТНОГО?! Хотя я в начале так и не понял, как .jar'ник скомпилировать. Всё он в консоль среды выводит.
Так и не понял, в фор все же можно булеан, но нельзя?)
Подскажите как найти сумму парных чисел в диапазоне от 0 до введённого числа ?
Гоша лучший!!!
Никак не могу найти волшебные кнопки. Как копируешь строку целиком и вставляешь куда нужно. Приходится по несколько раз набирать одно и тоже. Хелп плз.
Прикольно. Я запилил игру "Больше, меньше" уже на 8 уроке)))
У меня в 2020 циклы работают подругому, пишу тоже самое, там где у него цикл ваил показывает 0, у меня всеравно прогоняет один раз и выводит 1 ( так как будто я поставил
У меня выдаёт ошибку при запуске цикла while, когда я по вашему примеру закомментировал цикл for. Пишет, java: class, interface, or enum expected
@bereal9464
3 жыл бұрын
у меня такая же херня
БЛ*ТЬ ЧЕЛ ОГРОМНОЕ СПАСИБО!!
У меня не запускается полностью идентичный код. Пробовал объявлять переменную отдельтно не помогло. Выводит в консоль значение 10 и всё. Не учитывается условие ...i
Не понимаю в чем проблема Когда пытался пощупать переменные Прописываю: int y=3 for(int x =0; x
Фух, я с паскаля перешел и тут шок, цикл for двигается в обратном направлении, неожиданно, но даже полезнее теперь будет.
@arkadiishefer4288
5 жыл бұрын
В Паскале есть downto , тоже самое
У меня перед while и do while переменная int почему-то всё время выдаёт ошибку. Как исправить, знает кто-то?
Когда учишься на явараш, а тут доучиваешься. Спасибо, парень, ты - святой!
@alex4676
2 жыл бұрын
хах, у меня наоборот) Я тут учу а в джава раш доучиваю.
у меня ошибка с выводом (i)-пишет что не может решить символ
Сложновато порою людям со средним логическим мышлением. Вся проблема в том, что те, кто разобрался в синтаксисе и в целом в языке, почему - то решило, что все разберутся с такой же легкостью. Спасибо за лекции. Это лучше из того, что пока что я нашел. Побольше бы примеров не с машинным языком, а именно по применению. Чуть творчески что ли)))
@user-tu5ef7fn7h
2 жыл бұрын
+
@isnintendo8656
6 ай бұрын
дело не только в самом синтаксисе, но и в логике ЯП, ее легче не сделать к сожалению. когда поймешь логику, то синтаксис будет намного легче пониматься и читаться
Пельменная )
for ( int i=1; i
@trevyt6336
6 жыл бұрын
Во втором j = 0, и в итоге к 8 прибавляется 2 и получается 10.
@flac1482
6 жыл бұрын
Конечное число в первом случае 9. 910. Поэтому и выводит 9.
хочу совет еще всем дать недумайте что если заплотите кому то и будете больше понимать вютубе все можно узнать так что всему можно тут научится неплотите никому просто тупо пишите все коды осознание придет
Мой номер лайка 999 :DD
как суммировать числа с помощью цикла while?
А разве приоритет операции в цикле for с инфиксным декрементом не играет никакой роли?
Всё круто, понятно и доступно) Единственное что, не плохо было бы объяснить, почему не стоит запускать бесконечный цикл) А то мало ли, кому приспичит)
@artemartem3375
5 жыл бұрын
да пусть запускают ничего страшного не будет
@Asadulla_kasimov
5 жыл бұрын
Потому что, это приведёт к запуску адронного коллайдера
@Evgen13Great
5 жыл бұрын
Вроде бы, просто память забьётся и всё, ничего страшного.
@tomcat8419
2 жыл бұрын
@@Asadulla_kasimov спасибо за коммент, поржал ))
int x = 10; do { x++; System.out.println(x); } while(x
@NimbleMan0
6 жыл бұрын
Это твой затуп) Т.к. do while сначала печатает 13, а после уже проверяет на условие x
@user-ev1pp4ft1i
6 жыл бұрын
Sergey Stashkevich понял. Спс
@denysk723
6 жыл бұрын
int x = 10; do { System.out.println(x); x++; } while(x
а как написать пока q и p вводятся ? в while
4:03 ?????
Остача - новое слово
@s1si4ki33
Жыл бұрын
это по Украински, а по русски будет Остаток
while отличается от for тем, что в for нельзя писать булеан , ну вообще-то можно... так чем тогда отличается? Сюда мы можем поставить break а можем return, но break будет более правильно... а почему правильно-то? У нас в художественной школе и то более аргументированно объясняли как краской мазать по холсту))
Я ПОНЯЛ!)
При такой расстановке строк, у меня тоже была ошибка в строке с выводом j. Поменяла местами строки( System.out.println и continue): boolean isTrue = true; int j = 0; while (j j += 1; if (j % 2 == 0); System.out.println(j); continue; } При этом, в консоли выводятся все числа от 1 до 100. Если в строке j +=1 поменять на 2 (3 и т.д.), то будут выводиться в консоле числа +2 (+3). т.е. по каким-то причинам строка if не работает. Может быть знаете, в чем причина?
@NitsuGaash
7 жыл бұрын
В строке, которая содержит if, в конце не надо ставить точку с запятой.
while (i
@freshman123
7 жыл бұрын
Это из ДЗ на сайте
@user-ek8mk7gt5c
7 жыл бұрын
не выполнилось потому что стоит continue и на 27 происходит переход на следующую итерацию и печать 27 пропускается
@slavas9200
5 жыл бұрын
а 28 почему пропускается?
what is do while?
От така задача : Напишите программу, которая считывает символы пока не встретится точка. Также предусмотрите вывод количества пробелов. Чи вірний код? int caunt=0; String sumvol; Scanner vidkorustyvacha = new Scanner(System.in); System.out.println("Vvedit sumvolu, dlya zupunku vvediy tochky . "); sumvol = vidkorustyvacha.nextLine(); while (!sumvol.equals(".")) { sumvol = vidkorustyvacha.nextLine(); caunt++; } System.out.println("vu vvelu tochky"); System.out.println("kilkist probiliv " + caunt );
@user-de3ud9gc7z
6 жыл бұрын
ні, спочатку потрібно імпортувати сканнер
@infiniti4961
6 жыл бұрын
Дякую. Тобто спершу імпортуємо сканер, а решта код вірний так,?
Гоша, привет. Не получаю реквизиты на почту для банк-перевода за подписку. Письма нет ни в спаме, ни в удаленных. Почта mail ру.
жму run, нечего не показывает -_-
а почему так не понятно?
package com.company; import java.util.Scanner; public class Main { public static void main(String[] args) { for (int i =10; i System.out.println(i*i); } } }
Хм-м, помогите Даше найти отличия Java от C++)))
@user-jg5zo9ho6w
6 жыл бұрын
Print вместо write
@kasatin4969
5 жыл бұрын
И от 1с
@dionstar9274
5 жыл бұрын
print вместо cout
@lichilich9261
4 жыл бұрын
Java это С++--
@loredmaxed3315
4 жыл бұрын
Java на андроид.
А в do while вывелось до 10, хотя указано что x > 10 Чего?
А каком редакторе пишешь?
@yevhensidey4082
3 жыл бұрын
Это idea
хОтябы)
Шёл 8 урок. Различий java от c++ заметил только boolean а не bool и нужно ставить f в конце float. Ну еще ввод вывод отличается.
@yevhensidey4082
3 жыл бұрын
Контроль памяти, в джаве его нет.
Спасибо. Астача? Ну и зря не показали бесконечный цикл 😁
А где continue
У меня ничего не работало, пока я не убрал package com.company !! Как это объяснить?
@konovalov_prod
5 жыл бұрын
package com.company. При создания ты создаешь пакет, у Гоши он package com.company вот такой, ты при создании создаешь свой, оставляешь слово packetge и пишешь имя своего пакет и все заработает
public static void main(String[] args) { Scanner num = new Scanner(System.in); int first, second = 50; boolean isTrue = false; System.out.print("Enter the first num: "); first = num.nextInt(); isTrue = first == 51; if (first >= second && isTrue); { System.out.println("Num is 10"); }else if (first == 45) System.out.println("Num is equal 45"); else { System.out.println("Num is lower than" + second); } switch (first) { case 51: System.out.println("Num is equal 51"); break; почему у меня ошибка Error:(15, 10) java: 'else' without 'if' ?
@Yurluck
5 жыл бұрын
Прошло уже 11 месяцев, но отвечу для тех кто увидел. На 8 строчке где условие IF, в конце НЕ НАДО ставить точку с запятой.
А можно в цкле for по другому записать, что бы выводило от 1-10(System.out.println(i+1);)
1:54 слова автора: "ОБЫЧНО так никто не делает, не выносит переменную из цикла, а обьявляют в цикле" потому делайте так! О_о ну-у-у-у-у-у как бы и че? А разница то в чем, *учитель* ? Какая мне разница, что многие так делают.
Циклы так же ка и в C
8:21
Return прерывает не только цикл, он прерывает функцию, амв этом случае всю программулину
А я из 2020:-)
@mraz0ta
3 жыл бұрын
Я тоже
@volodymyrparkhomenko4025
3 жыл бұрын
А я из 2021 :-)
12:30 то есть 10>10?
@arkadiishefer4288
5 жыл бұрын
Х стал равен десяти, вывелся, а потом проверили условие
Я всегда знал, что Java и JavaScript - это одно и то же!
Все видео смотрю на скорости x2
@smokyz_
6 жыл бұрын
А я на 0.75, ибо не успеваю :(
@saro.saribekyan
6 жыл бұрын
Может это из за того, что это твои первые шаги в эту отрасль? Если так, то разумеется информации будет много. А у меня за плечами два года изучений/практик на C++, Python и C#, поэтому многое тут для меня уже не новость, я лишь хотел ознакомится с синтаксисом Java по-быстрому для Android Studio. А ты не огорчайся, лишь упорством преодолеешь это преграду, а дальше уже будет не хватать и скорости 2x :)
@smokyz_
6 жыл бұрын
Ну я немного учил там python и c#, щас учу java для кое каких цель, которые у меня щас появились
@saro.saribekyan
6 жыл бұрын
Сначала начни углубляться в одном конкретном языке и в теориях, а дальше уже будешь готов изучать чуть ли не что угодно за короткие сроки. И помни - главное не языки, главное принципы.
@smokyz_
6 жыл бұрын
Лады.
4:03 звук страшный
Неправильно!! While это цикл с предусловием, а Do While с постусловием
@vilor025
6 жыл бұрын
хочешь исправлять иди на куй , на куй себе броню и исправляй)
@user-sp1bk7pm8i
4 жыл бұрын
Зачем вы зашли на этот видео курс? Если вы учите автора, который обучает java, значит вы знаете этот язык программирования.
@user-tq7wi6js2n
4 жыл бұрын
@@user-sp1bk7pm8i невозможно знать ЯП полностью. Просто есть люди, осведомлённые в какой-то области больше, чем автор видео. Например, про работу циклов do while и while я был в курсе из С++. Но это не означает, что я знаю Java и могу теперь на нём прогать. Вы несёте бред
Не работает while
Вот этого я сразу и не понял If (2%2==0) Ведь в математике 2:2 =1 🤷♂️ Или я не прав ?
@costamato
2 жыл бұрын
@@Zorokage понял , получается остаток от результата
Остача, это новое слова в русском языке или в программировании
@murdercompany
6 жыл бұрын
Везде в соц.сетях написано, что он с Украины. Остача это украинское слово. и Вполне нормально, что человек вместо остатка говорит остача
@rufatbunyadzade
6 жыл бұрын
CловО
@theammir
5 жыл бұрын
@@murdercompany Ну блин, урок же не нужно делать по сценарию, но при этом он даже не удосужился перезаписать отдельный кусок речи. Видео-то для русскоговорящих.
@Ngeorge
5 жыл бұрын
@@murdercompany Это не украинское слово)) Это слово дауна который вырос в украинской деревне и слышал как базарят суржиком, на украинском остаток будет "Решта"
@murdercompany
5 жыл бұрын
@@Ngeorge остача это математический термин, в русском языке остаток. А "решта" это "здача". Читай "Тлумачний словник", а потом пиши что-то
а как сделать бесконечный цикл?
@user-on2jn8hi4g
3 жыл бұрын
for( ; ; ) Но это не точно),я только учусь
@user-tu5ef7fn7h
2 жыл бұрын
Сделай чтобы условее было всегда правдой
астача
блин, чувак, все слишком быстро и сложно. с предыдущего урока стало все непонятно уже. больше примеров, больше объяснений нужно и в раз 5 помедленнее!)
@user-mc4ww6mx5l
6 жыл бұрын
Пересматривай по нескольку раз.
@TGrod
5 жыл бұрын
Да вроде норм) это мой второй язык. 1 java script (мог ошибиться в названии). В них много общего
@user-ii5ju9bo5i
5 жыл бұрын
лол смотрю в скорости х2 и все понятно, думал он медленно говорит...
@adiletkulakhmet4977
5 жыл бұрын
@@user-ii5ju9bo5i жиза
@Bohdan816
3 жыл бұрын
@@user-mc4ww6mx5l у него просто ошибка любого математика-препода. Он рассказывет о инстркменте, но по сути не объясняет зачем он нужен.
Do While : почему 10 вывел?
Ооо да читаю коменты все такие умные, то-есть я один такой дэбил не особо понимаю как это работает ...
@OxidanteRed
2 жыл бұрын
я в той же лодке что и ты, нифига не понял.
Только в прошлом видео не сказал, что ++ называется итерация.
@slavas9200
5 жыл бұрын
инкрементация и декрементация соответственно