Ан очакван идентификатор е много често срещана грешка, с която се сблъскват начинаещите. В този раздел ще обсъдим каква е очакваната грешка в идентификатора , на причини за възникване на грешки, и как да коригирате грешката, очаквана от идентификатора в Java. Преди да преминем към грешката, първо ще разберем какво са идентификатори в Java .
Идентификатори в Java са символни имена, използвани за идентификация. Те могат да бъдат а име на клас, име на променлива, име на метод, име на пакет, име на константа , и т.н. Въпреки това, In Java , има някои запазени думи, които не могат да се използват като идентификатор, като int, const, new, double, enum и т.н.
Какво представлява очакваната грешка в идентификатора?
Това е много често срещана грешка при компилиране, която възниква по време на компилиране.
Нека разгледаме следната програма на Java.
динамичен масив в java
IdentifierError.java
public class IdentifierError { System.out.println('javatpoint'); }
Когато се опитаме да компилираме горната програма, получаваме следната грешка.
Кодът изглежда добре, но не е така. Защото изявлението за печат не е правилното място. Трябва да е вътре в метод/блок. Нека увием кода в метод и след това да компилираме и стартираме.
IdentifierError.java
public class IdentifierError { public static void main(String args[]) { System.out.println('javatpoint'); } }
Изход:
char към int java
javatpoint
Причини за възникване на грешка
Възможно е да има следните причини за възникване на грешката:
- Това се случва, когато кодът не отговаря на правилата за синтаксис на Java.
- Блок от код, директно написан в тялото на класа, вместо в метод или блок.
- Може да има допълнителни къдрави скоби.
- Кодът не е на правилното място.
- Всеки израз трябва да има точка и запетая в края.
Как да коригирате/разрешите грешки?
- Не забравяйте да поставите точка и запетая в края на твърдението.
- Не поставяйте код директно в тялото на класа.
- Извикването на методи трябва да е вътре в метод, конструктор или статичен инициализатор.
- Напишете блок код на правилното място.
- Премахнете излишните къдрави скоби.
IdentifierErrorExample1.java
public class IdentifierErrorExample1 { public static void main(String args[]) { System.out.println('Python'); } System.out.println('MySql'); System.out.println('Java'); } }
Нека компилираме горния код. Получаваме очакваната грешка.
Спазвайте горния код, получаваме допълнителна къдрава скоба, която е причината за генериране на грешка. Грешката може да бъде коригирана чрез премахване на допълнителна скоба на ред 6.
как да сдвоите слушалки beats
Грешката възниква и когато поставим точка и запетая вместо запетая, докато дефинираме стойности изброяване . Например, разгледайте следния код.
IdentifierErrorExample2.java
public class IdentifierErrorExample2 { public enum Vegetables { eggplant, tomato, broccoli; } public static void main(String args[]) { for(Vegetables veg : Vegetables.values()) System.out.println(veg); } }
Нека изпълним горния код. получаваме очакваната грешка на идентификатора.
За да коригирате грешката, премахнете точката и запетая от стойностите на enum.
public enum Vegetables { eggplant, tomato, broccoli; }
Понякога грешката може да е много по-голяма. Разгледайте следния код.
IdentifierErrorExample3.java
import java.util.Arrays; public class IdentifierErrorExample3 { int[] primes = {17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73}; int max_val; max_val = nums[0]; for (int i = 1; i max_val) { max_val = primes[i]; } } System.out.println('Primes Numbers are: ' + Arrays.toString(primes)); System.out.println('Largest Prime is: ' + max_val); }
Нека компилираме горния код.
приложения за облачни изчисления
Получаваме твърде много грешки, защото някои изрази директно пишат в тялото на класа. За да разрешите грешката, напишете целия блок от код вътре в метод и след това компилирайте и стартирайте.
IdentifierErrorExample4.java
import java.util.Arrays; public class IdentifierErrorExample4 { public static void main(String args[]) { int[] primes = {17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73}; int max_val; max_val = primes[0]; for (int i = 1; i max_val) { max_val = primes[i]; } } System.out.println('Primes Numbers are: ' + Arrays.toString(primes)); System.out.println('Largest Prime is: ' + max_val); } }
Изход: