Уроки Java с нуля / #6 - Условные конструкции (if-else, switch-case)

Поделиться
HTML-код
  • Опубликовано: 12 май 2024
  • Условные конструкции позволяют выполнить проверку и в зависимости от результата произвести выполнение определенного участка кода. За урок мы научимся использовать конструкцию if-else, а также switch-case в языке Java.
    ✅ Полезные ссылки:
    - Урок на сайте itProger: itproger.com/course/java/6
    ⏰ Тайм коды:
    00:00 - Начало
    00:19 - Что такое условная конструкция?
    00:50 - Конструкция «if»
    03:05 - Разные типы условий
    08:03 - Оператор «else»
    09:59 - Оператор «else if»
    16:02 - Несколько условий
    19:58 - Практическое применение
    25:03 - Оператор «switch-case»
    30:28 - Создание калькулятора
    34:45 - Заключительная часть
    ✔ Сообщество программистов: itproger.com/
    ✔ -------------
    Вступай в группу Вк - prog_life 🚀
    Инстаграм itProger: / itproger_official
    Группа FaceBook - goo.gl/XW0aaP
    Instagram: / gosha_dudar
    Telegram: t.me/itProger_official
    Twitter - / goshadudar
    - Уроки от #itProger 👨🏼‍💻
    - Все уроки по хештегу #itprogerLessons

Комментарии • 207

  • @melnikx
    @melnikx Год назад +77

    У программы настолько дружелюбный интерфейс, что когда я пытался сравнить значения двух строк через ==, не досмотрев это видео, она сама предложила мне equals (когда я ткнул в этот символ) и все заработало. Приятно удивлен)

  • @user-gk6nr1bj3h
    @user-gk6nr1bj3h 2 месяца назад +3

    Лучший человек на планете! Настолько круто объяснено, что хочется прыгать и танцевать. СПАСИБО!

  • @user-op7nn5ry1h
    @user-op7nn5ry1h 8 месяцев назад +23

    Только начал изучать Java и все что связано с программированием. Видео очень понятные, автору спасибо огромнейшее. Нравится всегда забегать наперед, ставить видео на паузу и пробовать сделать предложенное самостоятельно, поэтому часто возникают ошибки, которые автор объясняет в следующую же секунду, это показывает насколько грамотно ведется обучение. Однозначно лайк!
    П.С. В конце наверное нужно было использовать float а не int, так как деление некорректно отображается в нынешнем калькуляторе)

    • @YuriiShanhin
      @YuriiShanhin 3 месяца назад

      Да, тоже так подумал, и пробовал подставить float, делит нормально. Но когда пробовал вводить числа с точкой, то выдавало ошибку, пока не разобрался почему и как исправить(((

  • @Morozinini
    @Morozinini Год назад +8

    Как же здоровы Вы объясняете ! По человечески! спасибооооооо!

  • @qwstay912
    @qwstay912 Год назад +1

    Смотрю,учусь,кайфую!
    😃

  • @medicdoma
    @medicdoma Год назад +15

    Спасибо, что так разбираете, по-человечьи, респект

  • @user-fq9tk8sy9e
    @user-fq9tk8sy9e 2 года назад +54

    А можно подробнее по поводу скрытого символа? Откуда он и как он появляется, почему только перед последним вводом он срабатывает?

    • @kanty2178
      @kanty2178 3 месяца назад +1

      Особенность сканера, так как он считает всю линию то и когда мы нажимаем на Enter то он считает ее как endl ну или /n и передается след элементу

  • @rendok6984
    @rendok6984 9 дней назад

    Спасибо, очень доступно обьяснено!

  • @user-oq9pe6hx9t
    @user-oq9pe6hx9t 2 года назад

    полезная информация 👍

  • @niyazbatyrkanov484
    @niyazbatyrkanov484 Год назад +16

    if else очень хорошо помогает решить задачи над арифметическими операциями . В данный момент я сейчас изучаю язык Java и мне очень тяжело с этими операциями особенно поразрядными (логическими операциями и операции сдвига, логическое умножение и т.д.) у меня итак хромает математика мне тяжело подбирать какую то правильную формулу под эти операции и решить задачи(что true,что false). Я не очень хорошо разбираюсь в этой сфере, многие говорили , что математика в изучении программирования не нужна, а вот и фигушки для меня Гуманитария она нужна , но я не сдаюсь , параллельно помимо платных курсов и мне помогают ваши видео курсы . Я очень вам благодарен. Надеюсь выгорания не будет и все таки изучу программирование!

    • @kingyo1296
      @kingyo1296 Год назад +3

      Ты молодец. Тоже всегда были проблемы с математикой, хотя считать любила.
      Чем больше мы занимаемся, тем больше оно закрепляется, и в конце-концов всё будет получаться.
      Тем более теперь я реально вижу где математика мне пригождается, из-за этого учить легче, тк есть мотивация и смысл. Которого в школе я не видела.

    • @FeeLZ-iw4jf
      @FeeLZ-iw4jf 11 месяцев назад +2

      Ну как успехи?

    • @Whyenen
      @Whyenen 9 дней назад

      Как успехи сегодня?

  • @astroboy2771
    @astroboy2771 Год назад +7

    Классный и качественный курс👍

  • @SANITAR_RUST
    @SANITAR_RUST 9 месяцев назад

    Очень круто!

  • @f_floren
    @f_floren Год назад +2

    Спасибо вам! Я уже начинаю потихоньку понимать код и даже написал свою очень простую программку

    • @skullcrusher4185
      @skullcrusher4185 9 месяцев назад

      Привет! ну как у тебя с джавой? прошло уже 8 месяцев, а я только её учу

    • @dotawhueta
      @dotawhueta 5 месяцев назад

      @@skullcrusher4185 привет, че освоил за 3 месяца
      я только учу ее

    • @skullcrusher4185
      @skullcrusher4185 5 месяцев назад

      @@dotawhueta хаха, я просмотрел курс. А дальше мне показалось сложно, но щас я перешёл на более легче язык - Питон, вот с ним у меня всё круто

  • @anjelomanoranjan3908
    @anjelomanoranjan3908 Год назад

    Супер! Спасибо

  • @Anatoli-bq1pe
    @Anatoli-bq1pe 2 года назад

    Благодарю!

  • @saymade
    @saymade Месяц назад

    Спасибо. Просто спасибо...

  • @rainwonarchive
    @rainwonarchive Год назад

    Огромное спасибо. Пол года не решался с питона перейти на другой язык.

  • @user-dl4nq9hb6m
    @user-dl4nq9hb6m 2 года назад

    Все понравилось.

  • @srjp4777
    @srjp4777 2 года назад +24

    Классные уроки, момент с особенностью ввода в конце слегка удивил)

    • @RUSSIANVILLAGER
      @RUSSIANVILLAGER 2 года назад +8

      Можно просто использовать не nextLine(); , а next();
      чекай)

    • @bohdanbrazhynenko9684
      @bohdanbrazhynenko9684 2 года назад

      @@RUSSIANVILLAGER next() это типа только для одного символа? И тогда такой проблемы как на видео не будет?

    • @naru5177
      @naru5177 Год назад

      @@RUSSIANVILLAGER вау реально, а для Char что можно использовать?

    • @OkupAiAbai
      @OkupAiAbai Год назад

      @@naru5177 для чар: scan.next().charAt(0)

  • @Crabchelo
    @Crabchelo 8 месяцев назад +4

    Даже спустя год он прекрасен.

  • @GorN_Rebel
    @GorN_Rebel Год назад +1

    Хорошее и подробное видео. Комментарии тоже порадовали )

  • @user-le4nv5cp1e
    @user-le4nv5cp1e Год назад +1

    Я тебя так долго искал)))

  • @anyazenevich7397
    @anyazenevich7397 2 года назад +104

    элсе режет слух))) и вы так в прошлых видео хорошо объясняли про типы данных, что int - это integer, то есть целое число. Почему бы в этом видео не дать перевод конструкции if else? Мне кажется, так намного понятнее ее суть. If - это если, else - это иначе. То есть если условие выполняется, код такой, иначе (то бишь если не выполняется) - код другой. Тогда и конструкцию else if можно представить не в виде отдельного оператора, а как условие внутри условия. То есть выходит так: если условие выполняется, делаем код1, иначе - следующее условие. Если это следующее условие выполняется, то делаем код 2, иначе - код 3.

    • @saint5294
      @saint5294 Год назад +17

      Я думаю человеку который не знает перевода else имеет нулевой уровень английского и ему стоит для начало подтянуть его

    • @user-go9qh9wb3h
      @user-go9qh9wb3h Год назад +10

      @@saint5294 а кому-то и русский подтянуть не мешало бы)

    • @saint5294
      @saint5294 Год назад

      @@user-go9qh9wb3h живу не в россий сдаю экзамены на английском , нет смысла изучать этот язык фашистов, даже стыдно как то что я его понимаю

    • @NickolasBerdzenishvili
      @NickolasBerdzenishvili Год назад +4

      Ноборот, не надо переводить. Вы понимаете, что большая часть информации в интернете на английском? Вы завтра захотите почитать какую-то книгу по программированию у которой нет перевода , откроете и ничего не поймете, потому что там не будет никаких "Если" и "Иначе". Да и в целом, если вы собираетесь программировать учите английский, иначе и работу найти будет сложно.
      А автору видео стоит поработать над произношением. Не элсе а Элс.

    • @user-fh2kv1gg7d
      @user-fh2kv1gg7d Год назад +1

      @@NickolasBerdzenishvili а тебе пора найти работу, в отличие от автора

  • @user-ts1oq3bm5c
    @user-ts1oq3bm5c 5 месяцев назад

    Братик ты лучший

  • @pavelkohanov8870
    @pavelkohanov8870 2 года назад

    Спасибо

  • @user-it8bd2tx9x
    @user-it8bd2tx9x 9 месяцев назад +2

    я не совсем понял что за ошибка с невидимым символом когда создавали калькулятор. можете кто нибудь по подробнее объяснить?

  • @OkupAiAbai
    @OkupAiAbai Год назад

    за элсе лайк!

  • @user-re8fg8yw6l
    @user-re8fg8yw6l Год назад

    Добрый день. А в операторе case строки можно сравнивать без использования оператора equals? можно объяснить в чём разница по сравнению с оператором If else.

  • @oksanavaleryevna
    @oksanavaleryevna Год назад +6

    О скрытом символе можно подробнее? как где почему)

  • @templatexd6326
    @templatexd6326 10 месяцев назад +3

    В Java оператор == сравнивает ссылки на объекты, а не их содержимое. Поэтому чтобы сравнивать строки по содержимому, лучше следует использовать метод equals() или equalsIgnoreCase().

  • @kibenito
    @kibenito 9 месяцев назад +1

    Всем привет! 6-й урок, полет нормальный! Параллельно купил по скидке курс на JavaRush. Пишу чтобы потом через год посмотреть, что будет )

    • @WARPTPSELL
      @WARPTPSELL 8 месяцев назад

      Тоже думаю,покупать или нет.Как курс?

    • @zetochka9952
      @zetochka9952 6 месяцев назад

      как дела?

  • @beqatokhadze5120
    @beqatokhadze5120 9 месяцев назад +1

    здравствуйте . в первую очеред огромное спасибо. дальше хочу спросить. в случае елс иф получается что мы неким оброзом связымаем значения инт с значением булин? конкретнее в нашем случае получается что изхезкар содержит некое значение а=15 б=15? тоесть изхезкар = а>=б ?

  • @beqatokhadze5120
    @beqatokhadze5120 9 месяцев назад

    или просто итог "да верно" будет работать только в тех случаях если будут верно заданы значениа булин или инт?

  • @RUSSIANVILLAGER
    @RUSSIANVILLAGER 2 года назад +30

    По поводу концовки - ввод запрашивать можно с помощью next(); и ошибка исчезнет, чем писать лишнюю строку кода)

    • @ilyakudinov2359
      @ilyakudinov2359 2 года назад +3

      Здравствуйте, покажите, пожалуйста, подробнее, как именно стоило написать метод next() ?
      Вот фрагмент этого кода из видео для удобства правки:
      Scanner scanner = new Scanner(System.in);
      System.out.print("Введите 1 число: ");
      int num1 = scanner.nextInt();
      System.out.print("Введите 2 число: ");
      int num2 = scanner.nextInt();
      int res;
      System.out.print("Действие: ");
      String action = scanner.nextLine();
      action = scanner.nextLine();
      switch (action) {
      ...

    • @germak
      @germak 2 года назад +18

      @@ilyakudinov2359
      Before:
      System.out.print("Действие: ");
      String action = scanner.nextLine();
      action = scanner.nextLine();
      After:
      System.out.print("Действие: ");
      String action = scanner.next();

    • @Kaifun1
      @Kaifun1 2 года назад +4

      @@germak Так как берем всего один символ, то данная строка выглядела бы намного лучше.
      System.out.print("Действие: ");
      char operation = scan.next().charAt(0);

    • @jewaepufyigwejfygasdipufe7537
      @jewaepufyigwejfygasdipufe7537 2 года назад +1

      @@Kaifun1 .charAt(0); можете обяснить для чего это? только начал и не совсем понимаю

    • @robot-alesha
      @robot-alesha Год назад

      @@jewaepufyigwejfygasdipufe7537 один символ можно ввести только а не несколько

  • @tarasbaklan
    @tarasbaklan 7 месяцев назад

    Механическая ошибка в коде. При копировании везде поставили + res. На качество подачи материала не влияет, поэтому ставлю лайк 🙂

  • @rKvinty
    @rKvinty 6 месяцев назад

    Честно, C# чутьли не слово в слово такой же 🤯

  • @AibekDandaev
    @AibekDandaev Год назад +1

    по поводу концовки
    nextLine приписывает к концу введенной с клавиатуры строки символов или даже 1го символа знак перевода строки
    или %n который и считывается последующими сканнерами

    • @wladeg2827
      @wladeg2827 Год назад

      соответственно next() не добавляет в конце строки символа перевода строки?

  • @user-lg7sw1ly2w
    @user-lg7sw1ly2w 2 года назад +21

    А ещё можно поменять тип данных с int на float и произойдёт чудо математики

    • @zipen4983
      @zipen4983 Год назад

      да ваще копец копиц копцы

    • @rillimnava354
      @rillimnava354 8 месяцев назад +1

      помжно просто при делении прописать res = {float) num1/num2; И тогда ненужно будет менять тип данных при инициализации переменных

  • @OlgaSavastova
    @OlgaSavastova 2 года назад +5

    про скрытый символ не понятно, почему тогда в случае переменных типа данных int не прописывали дополнительно int = scanner.nextLine(); ? или это только для типа данных String?

    • @ilyakudinov2359
      @ilyakudinov2359 2 года назад +1

      Если вы ввели, например 5, то на самом деле там будет еще символ перевода строки, например "5
      ", кроме того, .nextInt считает "5", а символ перевода останется, его как раз и получите при вызове nextLine.
      Это конечно, справедливо, но на ваш вопрос не отвечает, сам над этим сейчас бьюсь, если вы нашли объяснение - прошу написать.

  • @kingyo1296
    @kingyo1296 Год назад

    Огонь

  • @Ko79rA
    @Ko79rA Год назад +1

    Доброго времени суток! Подскажите, а можно ли использовать switch-case для двойных массивов? В частности - есть 12 месяцев и есть дни в каждом месяце (для удобства в каждом пусть будет по 30 дней). Через консоль пользователь вводит данные (например траты) за каждый отдельный день. Нужно найти сумму трат за определенный месяц.

  • @sharmlow5750
    @sharmlow5750 Год назад +1

    Не уверен насколько это правильно, но я думаю правильнее было бы в конце ролика использовать очистку буфера, нежели снова открыть поток для ввода string, хоть это и сложнее новичку(поправьте если что-то неправильно написал)

  • @izmailjuda8614
    @izmailjuda8614 2 года назад +5

    Недосмотрев ролик полез делать калькулятор на if else и застрял на моментах с невидимым символом и с записью типа (role == "Admin"). Чесал репу пока не досмотрел до конца)) Хорошо что такие моменты освещаются на практических примерах. ибо самому догадаться что после числового типа данных в строку автоматом проставляется невидимый символ просто нереально. А то программа ошибку не выдает, а просто игнорит строку

    • @user-pd4on3ls9x
      @user-pd4on3ls9x 2 года назад

      Спасибо 🙏🏻 очень классно объясняете !

    • @naru5177
      @naru5177 Год назад

      то же самое, но с невидимым символом я разобралась: заново вписала Scanner scam=new Scanner(System.in); только scan на scam поменяла. А условие у меня так и не заработало пока не досмотрела до equals
      не поняла только насчет Char, у него есть свой next или как вообще

  • @madfrant
    @madfrant 2 месяца назад

    при создании калькулятора горит красным слово RES , может в новых версиях теперь по другому както

  • @kibenito
    @kibenito 9 месяцев назад

    какое сочетание клавиш нажимается, когда копируется и вставляется ниже сразу по 2-3 строчки кода? Например, как на 27:29 минуте

    • @sepe6a
      @sepe6a 7 месяцев назад +1

      ctrl + d будучи на строке кода копирует ее и создает такую же ниже

  • @applejuice5488
    @applejuice5488 7 месяцев назад +3

    Если у кого то возникает проблема с кодировкой русского текста. Решение: В Windows Региональные параметры/ Административные языковые параметры/вкладка Дополнительно/Изменить язык системы/Поставить галочку около Бета-версия: Использовать юникод (UTF-8) Для поддержки языка во всём мире. Далее в IntelliJ IDEA лезем в настройки Ctrl+Alt+S / вкладка Editor/ File encodings/Global encodings и Project encodings выставляем UTF-8 Ниже в Default encodings for properties files выбираем System default windows 1251 затем перекрестится трижды по православному тремя перстами приговаривая Изыдь бесовщина дьявольская. (последнее обязательно иначе не получится)

    • @YYz12
      @YYz12 3 месяца назад

      герой♥

  • @Real_Time_TV
    @Real_Time_TV 2 года назад +3

    Есть некоторая загвоздка благодаря которой 1/2 будет равно 0, так как дробную часть консольное приложение не выведет. Для более идеального результата можно поменять одну из переменных на тип данных float, тогда результат будет верным
    System.out.print("Введите 2 число: ");
    float num2 = scanner.nextFloat();

    • @drubic8434
      @drubic8434 Год назад

      Добрый день, а нельзя просто сделать float res;???

    • @wladeg2827
      @wladeg2827 Год назад

      @@drubic8434 интересный вопрос, надо пробовать что получится

  • @2TIME_2MACHINE
    @2TIME_2MACHINE 9 месяцев назад

    код абсолютно такой же но когда все ввел правильно все равно выводит фразу как тебя зовут, ошибок нет 2 часа проверял все. Может ли быть это связано с тем что я испоьзую Java 8?? подскажите пожалуйста

  • @envedimka5636
    @envedimka5636 11 месяцев назад

    33:36 ... я ж казав під попереднім відео, що ця Java трохи тупувата 😄)). Вона мене, час від часу, просто виводить з себе )).
    Дякую за відео-уроки.

    • @sn1kers970
      @sn1kers970 9 месяцев назад

      типикал хохол

  • @user-v707
    @user-v707 Год назад

    Здравствуйте. У меня NetBeans IDE 8.1 подсказки как у вас не показывает. Где включить?

  • @user-pf3cu2pm4p
    @user-pf3cu2pm4p Год назад

    В калькуляторе "+" когда ставишь знак в ковычки выдает ошибку, как исправить?

  • @forsidekhan5405
    @forsidekhan5405 Месяц назад +1

    switch (action) {
    - выдавало постоянную ошибку, сверял код несколько раз... не работает. Решил автоматом пофиксить, весь код изменила сама программа на
    if ("+".equals(action))
    Заработало без проблем, но код изменился.

  • @user-sg8bp6dy9r
    @user-sg8bp6dy9r 2 года назад +1

    Почему всегда условие подсвечивает желтым цветом на фоне условия? Как будто это ошибка

  • @forsidekhan5405
    @forsidekhan5405 Месяц назад +1

    У меня возник вопрос:
    Есть ли в IntelliJ IDEA что-то вроде глобального блокнота, который отображается в программе, но с функцией скрывать его, менять размер, шрифт и т.д.? Т.е. он не имеет отношения к проекту и коду соответственно, а просто как доп. функция для заметок?

  • @friedshrimp5329
    @friedshrimp5329 Год назад +1

    Интересно слушать лекции, спасибо большое)))Но очень быстро говорите))))Делаю перерывы, мозгу тяжело обрабатывать так быстро новую информацию)

  • @user-lr3vn2jr3j
    @user-lr3vn2jr3j Год назад +1

    Привет! Есть вопрос:
    Последний пример (с калькулятором) на gdk 19 не запускается, выдает такую ошибку: Incompatible types. Found: 'java.lang.String', required: 'byte, char, short or int'
    Запускал на gdk 16 - все получилось.
    В чем проблема? Подскажите пожалуйста.

    • @l1m0n41k0iq
      @l1m0n41k0iq Год назад

      надо место switch юзать if

    • @kotyarych99
      @kotyarych99 Год назад

      Аналогично, только тренируюсь в Eclipse (хардкор, это как ручная коробка передач и автомат по сравнению с Idea). Eclipse как решение предлагает сменить JDK на 17, а в 19 в доках указан значительно меньший список поддерживаемых типов переменных для оператора switch-case. Пришлось нумеровать действия, чтобы задействовать пример из урока

    • @kotyarych99
      @kotyarych99 Год назад

      This is a known bug in Java 19. This was confirmed by Brian Goetz himself on the amber-dev mailing list.
      UPDATE: This issue is completely fixed in Java 20.
      Ан нет, оказывается это бага в JDK 19....

  • @Volodyanya
    @Volodyanya 23 дня назад

    А как этот калькулятор закольцевать? Чтоб можно было снова делать вычисления. Вернуться к "введите первое число"

  • @yujostar1537
    @yujostar1537 8 месяцев назад

    Следующие уроки еще не смотрел, но есть вопрос. Что если в этой конструкции написать 21 / 2 ? Подумал я и проверил пишет целое число, поменял тип данных на флот, после чего все работало, но задумался а если пользователь захочет написать в калькуляторе не целое число а дробное и оно уже не работало, хотя тип данных совпадал. в чем ошибка?

    • @rKvinty
      @rKvinty 6 месяцев назад

      А что за ошибку выдаëт?

  • @niru4ep
    @niru4ep Год назад

    Подскажите, если: scanner.nextInt(); для цифр, а ввести в букву выдает ошибку InputMismatchException (не соответствие токена).
    Как этого избежать? Чтобы при введении буквы программа не крашилась, точнее как сделать проверку что введенные данный соответствуют цифрам? пробовал hasNextInt() но после него остальной код не видит переменной..
    Только учусь если что..

    • @NickolasBerdzenishvili
      @NickolasBerdzenishvili Год назад

      Да, в Джаве не существует scannet.nextChar. Используют input.next().charAt(0);. Сам только учусь, по этому погуглите сами )

  • @mazangito
    @mazangito 2 года назад +2

    Очень нравятся ваши уроки, практически всё улавливаю, есть у меня только одна проблема со IDEA постоянно слетает русский язык, пробую всё , но результат всегда один слетает при новом запуске (((

    • @gurgafurga4112
      @gurgafurga4112 Год назад

      аналогично, как исправить?

    • @naru5177
      @naru5177 Год назад

      у меня IDEA вообще не открылся, пишу на другой онлайн среде

  • @williamimaginary8137
    @williamimaginary8137 Год назад

    У меня scanner в scanner.nextLine горел красным. Я его сократил до scan.nextLine и оно заработало, но res тоже горит красным и выдаёт ошибку. Придётся искать в инете

  • @user-tg4jv4vk3h
    @user-tg4jv4vk3h Год назад

    Ребята!! Использую тип данных double и все равно не могу вводить дробные числа, программа не работает! В чем может быть проблема?

  • @jenya31071995
    @jenya31071995 2 месяца назад

    У меня не знаю почему но не хочет работать через switch, выдаёт incompatible types и предлагает перейти на if и else. В чём причина?

  • @Tvorogok1
    @Tvorogok1 8 месяцев назад

    Почему когда пишу switch (action), показывает ошибку?

    • @applejuice5488
      @applejuice5488 7 месяцев назад

      Такая же фигня. Отправил приятелю код и о чудо у него всё работает. Было предложено сменить SDK c 21 на 17 версию. Начал проект заново но что то не помогло. Вы разобрались с этим ?

  • @rubicon-1291
    @rubicon-1291 11 месяцев назад

    А теперь switch не поддерживает строки? В последнем задании всплывает ошибка при запуске

    • @w3musy
      @w3musy 8 месяцев назад

      Это проблема у тебя, можешь скинуть сюда код если еще не решил?

  • @chessx6847
    @chessx6847 7 месяцев назад +1

    Про скрытый символ не вполне понял

  • @abdieveldan
    @abdieveldan Год назад

    Что такое тобишь?

  • @artyr8892
    @artyr8892 6 месяцев назад

    Не могу заменить в этом коде int на float дает ошибку, может кто подскажет в чем дело?

  • @sopubg_1532
    @sopubg_1532 Год назад +1

    Слушай, такая проблема, я когда пишу System.out.print он выделяет слово print как ошибку, скажи что делать пж

    • @zig5196
      @zig5196 Год назад

      Ну гугл в помощь а возможно ты скобки не поставил

  • @artemzaitsev7574
    @artemzaitsev7574 11 месяцев назад

    Добрый День! Подскажите, пожалуйста, почему у Меня срабатывает компилятор на первом же условии, если у Меня стоит совершенно другое условие и последнее else подчёркивает как ошибку? Заранее благодарю за ответ 🙂
    int a = 15; int b = 20;
    char sym1 = 'A', sym2 = 'a';
    boolean isHasCar = false;
    if (isHasCar){
    System.out.println("Значение НЕ верно!");
    } else if (sym1 == sym2); {
    System.out.println("Second test");
    } else {
    System.out.println("Значение не верно!");}

    • @ern3st0_04
      @ern3st0_04 11 месяцев назад +1

      В строке
      } else if (sym1 == sym2); {
      лишняя " ; " после скобок

    • @artemzaitsev7574
      @artemzaitsev7574 11 месяцев назад

      @@ern3st0_04 Благодарю вас за ответ и помощь!

  • @YanamiBeatz
    @YanamiBeatz 2 года назад +1

    Подскажите пожалуйста, как можно решить такую проблему...При выводе в консоли русских слов/букв появляются знаки вопроса, как будто он не читает их, хотя в коде все нормально отображается, в настройках программы указанна кодировка utf-8(везде), пробовал другие, не помогло, работаю в программе eclipse

    • @russian.stoicism
      @russian.stoicism 2 года назад

      Тоже с этой проблемой столкнулся, так и не понял как решить

    • @YanamiBeatz
      @YanamiBeatz 2 года назад

      @@russian.stoicism Сергей Немчинский сказал что эта одна из трех самых сложных проблем в сфере, на нее есть много статей, но я к сожалению так и ничего не нашел, советовали не останавливаться на этом вопросе так как код в 100 проц случаях будет писать на английском языке, но кстати я проверял это в Idea, там все работает, если в настройках указать везде utf-8

    • @user-hj5ox7zd3b
      @user-hj5ox7zd3b 2 года назад

      @@YanamiBeatz Это не из-за кодировки (хотя может быть дело в ней), но фиксится обычно сменой JDK при создании проекта, к примеру в 18 не работает кириллица, выводит вопросики, а в 17 все в порядке.

    • @YanamiBeatz
      @YanamiBeatz 2 года назад +1

      @@user-hj5ox7zd3b Действительно помогло, пришлось установить Jdk 17, затем указать его в настройках при создании проекта чтобы он как по дефолту был, и теперь при компиляции все нормально выводит, спасибо огромное за помощь 💪

    • @awenn2015
      @awenn2015 Год назад

      Задолбали, гуглить идите на не спамьте в комментах своими глупыми вопросами

  • @user-mm3sp8si1k
    @user-mm3sp8si1k 2 года назад +2

    Помогите!!!
    Когда пишу что-то в "sout" на русском он не может определить что я написал, а когда на английском он это выводит

    • @user-mm3sp8si1k
      @user-mm3sp8si1k 2 года назад

      Допустим напишу
      System.out.print("Hello "); он это выведет как "Hello "
      А если напишу
      System.out.print("Привет "); он это выведет как "?????? "
      Подскажите пожалуйста что делать... (P.S. использую IntelliJ IDEA Community Edition 2021.3.3)

    • @crazylemmy
      @crazylemmy 2 года назад

      @@user-mm3sp8si1k что-то с кодировкой. Справа внизу (где стетусбар) попробуй выбрать другую кодировку, например UTF-8, или windows-1251

    • @user-hj5ox7zd3b
      @user-hj5ox7zd3b 2 года назад

      @@user-mm3sp8si1k Это не из-за кодировки (хотя может быть дело в ней), но фиксится обычно сменой JDK при создании проекта, к примеру в 18 не работает кириллица, выводит вопросики, а в 17 все в порядке.

  • @redrickshuhart4444
    @redrickshuhart4444 Год назад

    Как говорил мой Дед.... Проверок много не бывает! А дальше не помню, очухивался с шишкой на голове =)

  • @vanhunter3864
    @vanhunter3864 Год назад

    у меня почему то слово action после switch с ошибкой красными буквами обозначает

    • @user-sm7hz6bl5s
      @user-sm7hz6bl5s Год назад

      такая же фигня. Ты понял в чем дело?

    • @w3musy
      @w3musy 8 месяцев назад

      @@user-sm7hz6bl5s Еще не понял в чем проблема? Если нет кинь сюда строку с свитчом.

    • @applejuice5488
      @applejuice5488 7 месяцев назад

      @@w3musy Дело не в коде, у меня та же ерунда но мой код сработал корректно на другом компе.

  • @rustamkanamatov
    @rustamkanamatov Год назад +2

    Про случайный невидимый символ не понял, слишком быстро и коротко объяснил.

  • @user-ot3jj6fk1o
    @user-ot3jj6fk1o Год назад

    34:40 я конечно ничего не говорю, но в питоне такой калькулятор делается в 2 строчки

  • @makarovigor717
    @makarovigor717 2 года назад

    16:00

  • @RUSSIANVILLAGER
    @RUSSIANVILLAGER 2 года назад +1

    Корректна ли запись if (role == "Admin") ? Не правильнее ли использовать if (role.equals("Admin")) ? тк мы сравниваем строки, а не числа. Поправьте меня, если не прав.
    UPD: спросил недосмотрев ролик, все понял)

    • @abobus3856
      @abobus3856 2 года назад

      Я начал применять раньше чем досмотрел и у меня ничего не вышло. Пришлось лезть в интернет чтобы узнать

    • @__-pq1nt
      @__-pq1nt Год назад

      забудь про это. Тебе сейчас это не нужно. Но суть в ссылках

  • @Miritashchyan
    @Miritashchyan Год назад

    у меня всё корректно заработало без equals, хотя компилятор в начале попросил создать отдельную переменную для role

  • @Garry_na_Ferarry
    @Garry_na_Ferarry Год назад

    Когда выводишь if(num2==0) - выделяется коричневым и просто игнорируется , с чем может быть связано кто подскажет?

    • @w3musy
      @w3musy 8 месяцев назад

      Проблема в пробелах правильно: if (num2 == 0) если не решил еще.

  • @user-it5tg9tm5p
    @user-it5tg9tm5p 3 месяца назад

    Вы хотели ввести в Э действия CHAR. Но ввели String. Я все таки хотел ввести Char. Но не нашел nextChar(); Такого наверное нет?

  • @makarovigor717
    @makarovigor717 2 года назад

    25:00

  • @user-yl3ry4eb1z
    @user-yl3ry4eb1z 2 года назад

    элсе, то бишь

  • @TOP_SET_
    @TOP_SET_ Год назад

    В общем со свичем не получилось, прога предложила все поменять на if, сама все перестроила и код заработал. Короче вывод такой, учиться Java в этой среде это все равно что учиться водить на Tesla с автопилотом.

  • @qu4zz4r
    @qu4zz4r Год назад

    6:36 не "is" а "does"

  • @user-nt7rl5fo8v
    @user-nt7rl5fo8v 2 года назад +1

    Попробовал без "break" работает корректно. Но при попытке делить на "0" if(num2 == 0)
    System.out.println("Error"); не работает.
    В место error выводится сообщение - Exception in thread "main" java.lang.ArithmeticException: / by zero
    at com.Lesson1.Main.main(Main.java:27)

  • @makarovigor717
    @makarovigor717 2 года назад

    2:00

  • @user-tl7le6li3v
    @user-tl7le6li3v 2 года назад +2

    Первый

  • @TOP_SET_
    @TOP_SET_ Год назад

    Верное условие или нет, у меня все всегда выполняется. Не могу понять что я делаю не так.

  • @user-rj6yq8xd3k
    @user-rj6yq8xd3k Год назад

    else произносится [els]

  • @timdasaev3330
    @timdasaev3330 Год назад

    Ты случайно не KING DM
    ??????????)

  • @nbdlvsforever
    @nbdlvsforever 8 месяцев назад +2

    Просто перепечатываю незнакомые слова без понимания того, почему и как это работает. 😑

    • @rKvinty
      @rKvinty 6 месяцев назад +1

      Не, ну ты хотя бы перевод слов загугли 🥲

  • @wingdings1476
    @wingdings1476 Год назад +1

    Почему тут так мало лайков?

  • @applejuice5488
    @applejuice5488 7 месяцев назад

    Если у кого то возникает проблема с командой switch (action). Решение: Ctrl+Shift+Alt+S /Modules/Sources/Language level/ выбрать 7-Diamonds, ARM, multi-cash etc

    • @user-jj2wc8ok8l
      @user-jj2wc8ok8l 4 месяца назад

      Ошибку по 7 тоже дает, пробуйте выше. У меня сработало на 8

  • @pablotav88
    @pablotav88 2 года назад +2

    Да блин, не ЭЛСЕ ПОЖАЛУЙСТА, а элс

  • @eosreign818
    @eosreign818 Год назад

    это точно java? а то я пока нашел минимальные различия с js на этих порах

    • @sociopatia4557
      @sociopatia4557 Год назад

      да, отличия, java и js совершенно разные языки

  • @horror3671
    @horror3671 2 года назад

    элсЭ

  • @huck_pro
    @huck_pro 2 года назад

    2

  • @kaktus916
    @kaktus916 3 месяца назад

    else по-другому читается

  • @ilyakudinov2359
    @ilyakudinov2359 2 года назад

    Здравствуйте.
    *** ***
    ВОПРОС:
    *** ***
    В чём ошибся в расписывании кода по шагам?
    Я читал советы, как исправить код,
    но хочу понимать, почему этот код не работает,
    а не просто лишь бы работало скопировать рабочий код.
    *** ***
    Как я понимаю процесс выполнения этого кода по шагам:
    *** ***
    0) создаётся объект scanner
    1) В консоли метод print пишет сообщение "Введите 1 число: "
    2) Перевод строки не указывается
    3) выполняется метод scaner
    курсор в консоли моргает, приглашая ввести число
    4) пользователь вводит число (например, 5) и нажимает enter
    получается, пользователь вводит 5/n
    а вовсе не просто 5
    этот важный момент я понимаю
    5) метод scanner читает введённые символы до знака перевода строки, т.е. до /n
    6) прочитанное значение 5 присваивается переменной num1
    7) метод print выполняет перенос строки, т.к. каретка (курсор) остановился перед знаком /n
    и печатает, что ему велит код "Введите 2 число: "
    перенос строки не требуется,
    курсор стоит в конце пустой строки без символа переноса строки
    8) выполняется метод scaner
    курсор в консоли моргает, приглашая ввести число
    9) пользователь вводит число (например, 8) и нажимает enter
    получается, пользователь вводит 8/n
    10) метод scanner читает введённые символы до знака перевода строки, т.е. до /n
    11) прочитанное значение 8 присваивается переменной num2
    12) объявляется переменная res
    13) метод print выполняет перенос строки, т.к. каретка (курсор) остановился перед знаком /n
    и печатает, что ему велит код "Действие: "
    перенос строки не требуется,
    курсор стоит в конце пустой строки без символа переноса строки
    14) выполняется метод scaner
    курсор в консоли моргает, приглашая ввести действие
    15) пользователь вводит действие (например, +) и нажимает enter
    получается, пользователь вводит +/n
    *** ***
    КОД:
    *** ***
    import java.util.Scanner;
    public class Main {
    public static void main(String[] args) {
    // Условные конструкции switch-case
    Scanner scanner = new Scanner(System.in);
    System.out.print("Введите 1 число: ");
    int num1 = scanner.nextInt();
    System.out.print("Введите 2 число: ");
    int num2 = scanner.nextInt();
    int res;
    System.out.print("Действие: ");
    String action = scanner.nextLine();
    switch (action) {
    case "+":
    res = num1 + num2;
    System.out.println("Результат: " + res);
    break;
    case "-":
    res = num1 - num2;
    System.out.println("Результат: " + res);
    break;
    case "*":
    res = num1 * num2;
    System.out.println("Результат: " + res);
    break;
    case "/":
    if(num2 == 0)
    System.out.println("Error");
    else {
    res = num1 / num2;
    System.out.println("Результат: " + res);
    }
    break;
    default:
    System.out.println("Вы что-то не то ввели.");
    }
    }
    }