PDA

View Full Version : Why am i getting this error?


Pinball_Wizard
03-01-04, 08:51 PM
Help please? Can anyone see why im getting a missing return statement error in this code?

public Boolean deleteLecturer(Integer lecturerId){

for(int i = 0;i<lecturers.size(); i++){

Lectures lectures = new Lectures();
Lecture gotHashTable = new Lecture();
gotHashTable=(Lecture)lectures.lectures.get(newInt eger(i)

if (gotHashTable.getLecturer().equals((Integer)lectur erId)){
return new Boolean ("False");
}else if (lecturers==null){
return new Boolean("False");
}else if (lecturerId==null){
return new Boolean("False");
}else if (lecturers.get(lecturerId)==null){
return new Boolean("False");
}else{
lecturers.remove(lecturerId);
Boolean affirmative = new Boolean("True");
return affirmative;



}
}
}

Cheers guys!

stdunbar
03-01-04, 09:03 PM
What if lecturers.size() is zero? How often does your loop run? What would be returned?


Help please? Can anyone see why im getting a missing return statement error in this code?

Pinball_Wizard
03-02-04, 06:13 AM
What if lecturers.size() is zero? How often does your loop run? What would be returned?

I've put a check in before the loop:

if(lecturers.size()==0){
return new Boolean ("False");
}else{

...but still gettin the same problem!

Ella
03-02-04, 10:01 AM
It's because of the for statement.

public boolean checkIf()
{
if (7 == 5)
{
return false;
}
else
{
return true;
}
}

is ok, but if you have a for statement you need a return value at the end

public boolean checkFor()
{
boolean returnValue = false;
for (int i = 0; i < 15; i++)
{
if (i == 9)
{
returnValue = true;
break;
}
}
return returnValue;
}

Your code is generally a little bit complicated, try to simplify it.
Regards, Gabriele.