Java if and else error

else without if ошибка. Помогите срочно

public class Solution
public static void main(String[] args) throws Exception
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String name1 = reader.readLine();
String name2 = reader.readLine();
String name3 = reader.readLine();
String name4 = reader.readLine();
int a1 = Integer.parseInt(name1);
int a2 = Integer.parseInt(name2);
int a3 = Integer.parseInt(name3);
int a4 = Integer.parseInt(name4);
if (a1 > a2);
if (a2 > a3);
if (a3 > a4);
System.out.print(a1);
else
System.out.print(a2);
else
System.out.print(a3);
else
System.out.print(a4);

http://docs.oracle. com/javase/tutorial/java/nutsandbolts/if.html убрать пробел
‘ что за хрень ссылки на оракловские мануалы нельзя вставлять.. вот дурь
если проще то думаю у одного if не должно быть много else, только 1. иначе стоит использовать else if и в конце else.
да и скобок чтот нехватат

У тебя НЕИМОВЕРНО криво и косо написан код! Надо чтобы было так:

public class Solution
public static void main(String[] args) throws Exception
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String name1 = reader.readLine();
String name2 = reader.readLine();
String name3 = reader.readLine();
String name4 = reader.readLine();
int a1 = Integer.parseInt(name1);
int a2 = Integer.parseInt(name2);
int a3 = Integer.parseInt(name3);
int a4 = Integer.parseInt(name4);
if (a1 > a2) if (a2 > a3)if (a3 > a4)System.out.print(a1);
>
elseSystem.out.print(a2);
>
elseSystem.out.print(a3);
>
else
System.out.print(a4);
>

Читайте также:  Xls to txt java

public class Solution
public static void main(String[] args) throws Exception
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String name1 = reader.readLine();
String name2 = reader.readLine();
String name3 = reader.readLine();
String name4 = reader.readLine();
int a1 = Integer.parseInt(name1);
int a2 = Integer.parseInt(name2);
int a3 = Integer.parseInt(name3);
int a4 = Integer.parseInt(name4);
if (a1 > a2) if (a2 > a3) if (a3 > a4) System.out.print(a1);
>
else
System.out.print(a2);
>
else
System.out.print(a3);
>
else

public class Solution
public static void main(String[] args) throws Exception
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String name1 = reader.readLine();
String name2 = reader.readLine();
String name3 = reader.readLine();
String name4 = reader.readLine();
int a1 = Integer.parseInt(name1);
int a2 = Integer.parseInt(name2);
int a3 = Integer.parseInt(name3);
int a4 = Integer.parseInt(name4);
if (a1 > a2 && a1 > a3 && a1 > a4)
System.out.print(a1);
else if ( a2 > a1 && a2 > a3 && a2 > a4)
System.out.print(a2);
else if (a3 > a1 && a3 > a2 && a3 > a4)
System.out.print(a3);
else if (a4 > a1 && a4 > a2 && a4 > a3)
System.out.print(a4);

Источник

[Solved] else without if error

else without if error is mostly faced by the java beginners. As the name suggests java compiler is unable to find an if statement associated with your else statement. else statements do not execute unless they are associated with the if statement. As always, first, we will produce the error before moving on to the solution.

[Fixed] error: ‘else’ without ‘if’

Example 1: Producing the error by ending if statement with a semi-colon

public class ElseWithoutIf  public static void main(String args[])  int input = 79; 
if(input > 100);
System.out.println("input is greater than 100"); > else 
  System.out.println("input is less than or equal to 100"); > > > 

Output:
/ElseWithoutIf.java:8: error: ‘else’ without ‘if’
else ^
1 error

Explanation:

The statement if(input > 100); is equivalent to writing
if (input > 100)
>

i.e. input is greater than 100 then execute an empty block. There is no else block for this. As a result, the next line else block does not have a corresponding if block, thus, produces the error: else without if.

Solution:

The above compilation error can be resolved by removing the semicolon.

public class ElseWithoutIf  public static void main(String args[])  int input = 79; 
if(input > 100)
System.out.println("input is greater than 100"); > else
  System.out.println("input is less than or equal to 100"); > > > 

Output:
input is less than or equal to 100

Example 2: Producing the error by missing the closing bracket in if condition

Just like the above example, we will produce the error first before moving on to the solution.

public class ElseWithoutIf2  public static void main(String args[])  int input = 89; if(input > 100)  System.out.println("inside if"); else  System.out.println("inside else"); > > > 

Explanation:

In the above example, if condition closing bracket is missing, hence, we are getting the else without if error.

Solution:

The above compilation error can be resolved by inserting the missing closing bracket as shown below.

public class ElseWithoutIf2  public static void main(String args[])  int input = 89; if(input > 100)  System.out.println("inside if"); 
>
else System.out.println("inside else"); > > >

Example 3: Producing the error by having more than one else clause for an if statement

public class ElseWithoutIf3  public static void main(String args[])  int input = 99; if(input > 100)  System.out.println("input is greater than 100"); > 
else
System.out.println("input is less than 100"); > else System.out.println("100"); > > >

Output:
/ElseWithoutIf3.java:12: error: ‘else’ without ‘if’
else
^
1 error

Explanation:

In the above scenario, you are chaining the two elses together that is not correct syntax, hence, resulting in the error. The correct syntax is given below:

if(condition)  //do A; > else if(condition)  //do B; > else  //do C; > 

Solution:

The above compilation error can be resolved by providing correct if-elseif-else syntax as shown below.

public class ElseWithoutIf3  public static void main(String args[])  int input = 99; if(input > 100)  System.out.println("input is greater than 100"); > 
else if (input 100)
System.out.println("input is less than 100"); > else System.out.println("100"); > > >

Output:
input is less than 100

The best way to deal with error: ‘else’ without ‘if’ is always to use curly braces to show what is executed after if. Learn to indent the code too as it helps in reading and understanding.

About The Author

Subham Mittal has worked in Oracle for 3 years.
Enjoyed this post? Never miss out on future posts by subscribing JavaHungry

Источник

Fix the Error: Else Without if in Java

Fix the Error: Else Without if in Java

  1. the error: ‘else’ without ‘if’ in Java
  2. Reasons for error: ‘else’ without ‘if’ in Java
  3. Fix the error: ‘else’ without ‘if’ in Java

Today, we will learn about an error saying ‘else’ without ‘if’ while writing code in Java. We will also figure out the possible reasons causing this error and find its solution.

the error: ‘else’ without ‘if’ in Java

Usually, this kind of error is faced by newbies in Java programming. Before moving toward the causes and solution for this error, let’s write a program that produces this error and understand it.

So, assuming that we are Python experts and beginners in Java. So, we will write the Java program containing if-else as follows.

//import libraries  import java.util.Scanner;  //decide future activity based on the current temperature  public class Test  public static void main (String[] args)   int temp;  Scanner scan = new Scanner(System.in);  System.out.println ("What's the current temperature?");  temp = scan.nextInt();   if (temp > 95 || temp  20);  System.out.println ("Visit our shops");  else if (temp  95)  if (temp >= 80)  System.out.println ("Swimming");  else if (temp >=60)  if (temp  80)  System.out.println ("Tennis");  else if (temp >= 40)  if (temp  60)  System.out.println ("Golf");  else if (temp  40)  if (temp >= 20)  System.out.println ("Sking"); >//end main()  >//end Test Class 

In this program, we get the current temperature from the user and decide our future activity based on the current temperature. The image above shows that we are getting a logical error about which NetBeans IDE informs at compile time.

So, we cannot even execute the code until we resolve the error. For that, we will have to know the possible reasons below.

Reasons for error: ‘else’ without ‘if’ in Java

The error itself is explanatory, which says that a Java compiler cannot find an if statement associated with the else statement. Remember that the else statement does not execute unless they’re associated with an if statement.

  1. The first reason is that we forgot to write the if block before the else block.
  2. The closing bracket of the if condition is missing.
  3. We end the if statement by using a semi-colon.

How to solve this error? Let’s have a look at the following section.

Fix the error: ‘else’ without ‘if’ in Java

//import libraries  import java.util.Scanner;  public class Test   public static void main(String[] args)    int temp;  Scanner scan = new Scanner(System.in);  System.out.println("What's the current temperature?");  temp = scan.nextInt();   if (temp > 95 || temp  20)   System.out.println("Visit our shops");  >//end if  else if (temp  95)   if (temp >= 80)   System.out.println("Swimming");  > //end if  else if (temp >= 60)   if (temp  80)   System.out.println("Tennis");  >//end if  else if (temp >= 40)   if (temp  60)   System.out.println("Golf");  >//end if  else if (temp  40)   if (temp >= 20)   System.out.println("Sking");  >//end if  >//end else-if  >//end else-if  >//end else-if  >//end else-if  >//end main()  >//end Test Class 
What's the current temperature? 96 Visit our shops 

We removed the semi-colon ( ; ) from the end of the if statement and placed the <> for each block to fix an error saying ‘else’ without ‘if’ .

It is better to use curly brackets <> until we are expert enough and know where we can omit them (we can omit them when we have a single statement in the block).

Mehvish Ashiq is a former Java Programmer and a Data Science enthusiast who leverages her expertise to help others to learn and grow by creating interesting, useful, and reader-friendly content in Computer Programming, Data Science, and Technology.

Related Article — Java Error

Источник

Ошибка: «else» без «if»

Мне нужно использовать каскадирование, если это почему-то похоже. Кроме того, не могли бы вы сообщить мне, если бы я сделал каскадный, если правильно? Я не смог найти хороший пример каскадирования, если так я просто сделал все возможное, зная, что такое каскадирование.

LazyDaysCamp.java:14: error: 'else' without 'if' else if (temp  

Что ошибка, которую я получаю

Удалите точку с запятой в конце этой строки:

И, пожалуйста, используйте фигурные скобки! Java не похожа на Python, где отступы кода создают новую область блока. Лучше играть в нее безопасно и всегда использовать фигурные скобки – по крайней мере, пока вы не получите больше опыта с языком и не поймете, когда сможете их опустить.

Проблема в том, что первая, если if (temp > 95 || temp < 20); совпадает с обычным отступом как

То есть, если temp не находится между 20 и 95, тогда выполните пустой блок. Для этого нет другого.

В следующей строке else нет, если это соответствует ему, и, таким образом, выдает вашу ошибку

Лучший способ справиться с этим – всегда использовать фигурные скобки, чтобы показать, что выполняется после if. Это не означает, что компилятор ловит ошибки, но сначала вы, скорее всего, увидите какие-либо проблемы, увидев отступ, а также ошибки могут показаться более читаемыми. Однако вы можете использовать такие инструменты, как eclipse, checkstyle или FindBugs, которые расскажут вам, если вы не использовали <> или использовали пустой блок.

Лучший способ может быть, сортировка логики при повторном тестировании

if (temp > 95 || temp < 20) < System.out.println ("Visit our shops"); >else if (temp >= 80) < System.out.println ("Swimming"); >else if (temp >=60) < System.out.println ("Tennis"); >else if (temp >= 40) < System.out.println ("Golf"); >else if (temp >= 20)

Я собираюсь переформатировать это для вас. Если вы используете фигурные скобки, у вас никогда не будет этой проблемы.

public class LazyDaysCamp < public static void main (String[] args) < int temp; Scanner scan = new Scanner(System.in); System.out.println ("What the current temperature?"); temp = scan.nextInt(); if (temp >95 || temp < 20) //else if (temp = 80) < System.out.println ("Swimming"); >else if (temp >=60) < if (temp else if (temp >= 40) < if (temp < 60) < System.out.println ("Golf"); >else if (temp < 40) < if (temp >= 20) < System.out.println ("Skiing"); >> > > > > > 

Эта ошибка возникает из-за того, что вы ввели точку с запятой после оператора if.
Удалите точку с запятой в конце первого оператора if в строке 12.

Источник

Оцените статью