Best thing to do is try them all. Its normally personal preference which decides how good an app is.... There is a lot out there. If you are a complete beginner, apps such as BlueJ allow you to call individual methods etc.... but if you want a full on IDE then eclipse or netbeans are quite common choices.
Here's my code with 3 errors. Now bear in mind that my program has compiled completely and ran correctly up to this method. All I'm trying to do with this method is get the average of all grades in a multi-array. I researched and found some code that was similar to what I needed to do but it's not working out yet. All other methods in my program work perfectly but I can't get this one to compile.
public double getMean(int allGrades[][])
{
int total = 0;
for (int grade : allGrades)
total += grade;
System.out.println("Total is "+getMean(grades));
}
return total/allGrades.length;
} // end class GradeBook
Gradebook.java:100: illegal start of type
return total/allGrades.length;
^
Gradebook.java:100: <identifier> expected
return total/allGrades.length;
^
Gradebook.java:100: <identifier> expected
return total/allGrades.length;
^
3 errors
> [url=http://en.wikipedia.org/wiki/Mu_(negative)]Mu[/url].
Heh heh, [url=http://en.wikipedia.org/wiki/MOO_programming_language]Moo[/url].
Seriously, there was more in Yawmark's reply than you gave him credit for. Mu means "none", and that's what he's trying to tell you. If you're a newbie, then you should try it without an IDE for a bit, until you're comfortable with the way the compiler and java VM work.
Then, and only then, should you branch out into IDE's. It is quite painful developing big Java projects without them, but while you are learning how things work, the IDE will serve only to discourage and frustrate you with more complexity to an already daunting task.
"Your return call is outside your method."
Ok I fixed that and now I have one error which is
"incompatible type" at the "for" line
found: int[]
required: int
for (int grade : allGrades)
What does that actually mean? Does it mean an array is used when it should not be used?
> "Your return call is outside your method."
>
> Ok I fixed that and now I have one error which is
>
> "incompatible type" at the "for" line
>
> found: int[]
> required: int
> for (int grade : allGrades)
>
> What does that actually mean? Does it mean an array
> is used when it should not be used?
You're using a two-dimensional array, and trying to pull a single int out of it.
Remember, your for-each construct is doing the equivalent of:
for (int i = 0; i < allGrades.length; i++)
{
int grade = allGrades[i]; // <-- This is an int[], not an int.
// ...
}
> "Have you thrown away the IDE yet?"
>
> No way dude. I can't write using Wordpad. I need
> something to guide me along even if all my code is
> wrong.
Try [url=http://www.textpad.com/]Textpad[/url], it's pretty nice (although not free). Or, if you're like me, use [url=http://www.vim.org/]Vim[/url]. Both offer syntax highlighting without the fuss of an IDE.