It is possible for the second return never to get called; thus, the function never to return anything. You have to have a return at the end of the function to guarantee to the compiler you will always return something. Take care, Sina -----Original Message----- From: programmingblind-bounce@xxxxxxxxxxxxx [mailto:programmingblind-bounce@xxxxxxxxxxxxx] On Behalf Of Alex Hall Sent: Friday, February 22, 2008 10:47 PM To: programmingblind@xxxxxxxxxxxxx Subject: method saying "no return statement" when there IS one Hi all. Yet again I have what to many of you is no doubt a very simple question, but it is not making sense. I have a method that is checking collisions on a battleship grid. It is an integer method that returns 0 if a collision is detected and 1 if there is no problem. The compiler, however, keeps saying that I am missing a return statement when I clearly have two, one in an if statement and the second in a related else. Here is the method: public static int checkCollisions(int[][] grid){ int i,j; for(i=0;i<grid.length;i++){ for(j=0;j<grid[i].length;j++){ if(grid[i][j]<=2){ return 0; else{ return 1; Have a great day, Alex __________ View the list's information and change your settings at //www.freelists.org/list/programmingblind __________ View the list's information and change your settings at //www.freelists.org/list/programmingblind