Java - .class not found issue

java

Solution

Basically this is a simplified version of your problem:

if (condition)
    int x = 10;

You can't do that in Java. You can't use a variable declaration as the single statement in an `if` body... presumably because the variable itself would be pointless; the only purpose would be for the side effect of the expression used for the assignment.

If you really want the pointless declaration, use braces:

if (condition) {
    int x = 10;
}

It's still useless, but at least it will compile...

EDIT: Responding to the comment, if you need to use the variable outside the `if` block, you need to declare it before the `if` block, and also make sure it's initialized before you read the value. For example:

// Note preferred style of declaration, not "long lls []"
long[] lls = null; // Or some other "default" value
if (ll == 100) {
    // I always put the braces in even when they're not necessary.
    lls = a1.val(ll);
}
// Now you can use lls

Or:

long[] lls;
if (ll == 100) {
    lls = a1.val(ll);
} else {
    // Take whatever action you need to here, so long as you initialize
    // lls
    lls = ...;
}
// Now you can use lls

Or possibly use a conditional expression:

long[] lls = ll == 100 ? a1.val(ll) : null;

Problem

I have following code, ``` class AA { public static void main(String[] args) { long ll = 100 ; AA1 a1 = new AA1() ; if(ll == 100) // Marked line long lls [] = a1.val(ll); } } class AA1 { public long [] val (long ll1) { long [] val = new long []{1 , 2, 3}; return val ; } } ``` which executes properly without the marked line. However, gives error ".class expected" with marked line. Can anybody help me what is the problem and how to solve this ?

Original source