I have a two-dimensional boolean array 'poorSignal' and need to write a method that returns a grid, where if a point on the array is true an X is displayed, if false an O is displayed. Here is my code:
publicString display(){for(int i =0; i < mapSize; i++){for(int j =0; j < mapSize; j++){if(poorSignal[i][j]=true){return"O ";}else{return"X ";}}return"\n";}}
When I compile, it gives me 'missing return statement' on the very last line of the method. I am also unsure if the 'return "\n" will work to add a new line when printing the array.
It's a question for an assignment, so I can't print it directly or just print the boolean values - it must be a method that produces the grid.
Anonymous User
05-Nov-2014The compiler cannot know whether the loop is actually run, therefore you must also have a return statement outside the outer loop.
But then, if I look at your code, I am not sure whether returning is what you really want there. If it is your intention to print the entire matrix, you might want to use a StringBuilder and then use the append method inside the loops. After the outer loop, return a string representation of the builder using the toString method like so: