Ошибка "не удается найти класс символа - ch", "не удается найти символ - метод nextCh();"

Я хочу написать программу, чтобы проверить, является ли буква гласной или нет, но я получаю 2 ошибки. Пожалуйста, помогите мне с этим. Я пишу эту программу на bluej, как того требует моя школа. Где я не прав?

это ошибки:

  • не могу найти класс символов - ch
  • не удается найти метод символа - nextCh();
import java.util.*;
class prg4 {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    System.out.println("enter letter");
    ch l, a, e, i, o, u = sc.nextCh();
    if (l == a)
      System.out.println("vowel");
    else if (l == e)
      System.out.println("vowel");
    else if (l == i)
      System.out.println("vowel");
    else if (l == o)
      System.out.println("vowel");
    else if (l == u)
      System.out.println("vowel");
    else
      System.out.println("not a vowel");
  }
}

Вы пытаетесь написать Java или Javascript? Вы использовали тег jquery, связанный с Javascript, и включили код, как если бы это был фрагмент Javascript, но сам код выглядит как Java. Важно четко представлять себе, какой язык вы используете — они очень разные.

Jon Skeet 13.12.2020 18:59

Что касается ошибки, которую вы получаете, вы пытаетесь использовать тип с именем ch, но такого типа нет, и метод с именем nextCh, но такого метода нет. Я подозреваю, что вы хотите char и nextChar, но я бы посоветовал вам подумать, почему вы думали, что это просто ch, чтобы не совершать подобных ошибок в будущем.

Jon Skeet 13.12.2020 19:01

Это джава. Извините, я в 10 классе и не знал, что jquery для javascript

ROXinfo 13.12.2020 19:01

@JonSkeet спасибо, это помогло. Я только начинаю с java и не буду делать подобных ошибок в будущем.

ROXinfo 13.12.2020 19:03

В дополнение к тому, что уже было сказано, a, e, i, o и u не должны быть переменными, и даже если бы они были, вы не должны пытаться присвоить им ввод пользователя. Пользовательский ввод должен быть назначен l, и вы должны сравнить его с постоянными char значениями 'a', 'e', 'i', 'o' и 'u'. Также вам не нужны все эти ветки if/else.

JustAnotherDeveloper 13.12.2020 19:04

@JustAnotherDeveloper Это проект if/else, который я должен был сделать.

ROXinfo 13.12.2020 19:06

@ROXinfo Тогда вы должны были упомянуть об этом в вопросе. Всегда указывайте в вопросе все требования, включая то, что вы можете и что не можете использовать. Или в этом случае то, что вы должны использовать.

JustAnotherDeveloper 13.12.2020 19:08

@JustAnotherDeveloper обязательно позабочусь об этом в будущем. Я новичок здесь, так что ошибка.

ROXinfo 13.12.2020 19:26
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
3
8
246
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Если вы хотите получить символ в качестве ввода, вам нужно использовать сканер следующим образом:

char x = sc.next().charAt(0); 

Таким образом, символ будет сохранен в этой переменной x, и вы сможете сравнить его в операторах if.

Тогда оператор if будет выглядеть так:

if (x == 'a') {
  System.out.println("It is a vowel.");
}

большое спасибо, класс теперь компилируется без ошибок.

ROXinfo 13.12.2020 19:20

но можете ли вы сказать мне разницу между одинарными и двойными кавычками в java?

ROXinfo 13.12.2020 19:21

@ROXinfo Одинарные кавычки используются для значений char. Двойные кавычки используются для значений String.

JustAnotherDeveloper 13.12.2020 19:27

Другие вопросы по теме