I am new to java, why a, b,c initialization are wrong in the following code.
public static void main(String[] args) { if (args.length < 2) throw new IllegalArgumentException ("we need 2 argumeents"); else { int a = Integer.parseInt(args[0]); int b = Integer.parseInt(args[1]); int c = a+b; } System.out.println(a + " + " + b + " = " + c); }
Advertisement
Answer
Java works differently compared to JavaScript. Every {} block has an own variable scope. Variables defined inside a block are not visible outside.
public static void main(String[] args) { { int x=1; System.out.println(x); // prints 1 } { int x=2; System.out.println(x); // prints 2 } // System.out.println(x); // error: cannot find symbol }