How to fix an error: /AccountDemo.java:53: error: missing return statement } ^ 1 error

Viewed 110

I am getting an error as follows:

/AccountDemo.java:53: error: missing return statement   }   ^ 1 error

I have tried everything. How can I fix this problem?

class Account
{
    private int number;


    public int getNumber()
    {
        return this.number;
    }
    public void setNumber(int number1)
    {
        number=number1;
    }

}

public class AccountDemo {

    public static void main(String[] args) {


        Account[] objArray= new Account[5];

        objArray[0].setNumber(7);
        objArray[1].setNumber(3);
        objArray[2].setNumber(5);
        objArray[3].setNumber(4);
        objArray[4].setNumber(9);

        int accountres= searchAccountByNumber(objArray, 63);
        System.out.println("Output after first search: "+accountres);

        int accountres1= searchAccountByNumber(objArray, 4);
        System.out.println("Output after second search: "+accountres1);
    }

    public static int searchAccountByNumber(Account[] objArray,int s)
    {
        int i=0;
        for(i=0;i<5;i++)
        {
            if(objArray[i].getNumber()==s)
            {
                return i;
            }
            else
            {
                return -1;
            }
        }
    }
}
1 Answers

I solved it by assigning a variable to it rather than directly returning it, looks as if it works.

 class Account {

    private int number;

    public int getNumber() {
        return this.number;
    }

    public void setNumber(int number1) {
        number = number1; }

}public class AccountDemo {

    public static void main(String[] args) {

        Account[] objArray = new Account[5];

        objArray[0].setNumber(7);
        objArray[1].setNumber(3);
        objArray[2].setNumber(5);
        objArray[3].setNumber(4);
        objArray[4].setNumber(9);

        int accountres = searchAccountByNumber(objArray, 63);
        System.out.println("Output after first search: " + accountres);

        int accountres1 = searchAccountByNumber(objArray, 4);
        System.out.println("Output after second search: " + accountres1);
    }

    public static int searchAccountByNumber(Account[] objArray, int s) {
        int finalreturn = 0;
        int i = 0;
        for (i = 0; i < 5; i++) {
            if (objArray[i].getNumber() == s) {
                finalreturn = i;
            } else {
                finalreturn = -1;
            }
        }
        return finalreturn;
    }
}

Good Luck!

Related