Неограниченная символьная ошибка
Получил ошибку "Незакрытый символ символов", используя BlueJ, при записи:
class abc
{
public static void main(String args[])
{
String y;
y = 'hello';
System.out.println(y);
}
}
Но я не могу понять, что не так.
Любая идея?
Спасибо.
Ответы
Ответ 1
В Java одиночные кавычки могут принимать только один символ, при необходимости, при необходимости. Для строк необходимо использовать полные кавычки:
y = "hello";
Вы также использовали
System.out.println(g);
который, как я полагаю, должен быть
System.out.println(y);
Примечание: При создании char
значений (вы, скорее всего, используете их позже) вам понадобятся одинарные кавычки. Например:
char foo='m';
Ответ 2
Java использует двойные кавычки для "String"
и одинарные кавычки для символов 'C'
.
Ответ 3
Я хотел бы дать небольшое дополнение к существующим ответам.
Вы получаете ту же "Неустранимую букву символов", если вы даете значение char с неправильной формой в формате Юникод.
Например, когда вы пишете:
char HI = '\3072';
Вы должны использовать правильную форму:
char HI = '\u3072';
Ответ 4
'' заключает в себе одиночный char
, а "" заключает в себе String
.
Изменить
y = 'hello';
- >
y = "hello";
Ответ 5
String y = "hello";
будет работать (обратите внимание на двойные кавычки).
char y = 'h';
это будет работать для символов (обратите внимание на одинарные кавычки)
но тип - это ключ: '' (одинарные кавычки) для одной char, "" (двойные кавычки) для строки.
Ответ 6
строка в "". Следовательно, "привет" должен быть "привет"
Ответ 7
Персонаж принимает только одно значение чувак! как: char y = 'h'; и, возможно, вы набрали как char y = 'hello'; или что-то удачи. на вопрос, заданный выше, ответ довольно прост, вы должны использовать ДВОЙНЫЕ ЦИТАТЫ, чтобы получить строковое значение. достаточно просто;)