Yes, Eclipse and IntelliJ do some pretty amazing things. I wish I had a toolset that nice for C/Python/whatever. By contrast, without the toolset in Java, you're sunk.
Then again, I wouldn't imagine or expect some types of development to be achievable without a rich toolset (FPGA work comes to mind). I just like to think of Java as a more general purpose language.
FWIW I hate IDE's, and the code produced by people using them gives Java a bad name for its verbosity and idiocy.
>> without the toolset in Java, you're sunk.
No, you're not. Try it. Use an editor, write some code. It's not rocket science.
(I also use "perl -d" as a REPL for Perl, which it does quite well)
And sometimes it's just not worth testing, because it's something like ``hmm, I wonder if 'intercalate ", " ["foo", "bar", "baz"]' returns 'foo, bar, baz'; ahh yes, it does.'' The only reason to test that is because you want your test suite to run slower.
Why write a unit test for a feature of the language? The Language designer probably already did that and all you need to do is write unit tests for your own code. I do a fair amount of clojure code now and find it highly useful for just running java code to see how it behaves. Which then helps me figure out how to code my actual code, which then will pass the test that I've already written.
I use vim, which when coupled with the right configuration and plugins can do most things your fancy IDE's can do, plus run in a temrinal over ssh.
For the record, in work I program a lot of Java and some C++, outside this, I work a lot in Clojure and Python, amongst other things (assembly, Boo, Yeti and recently F#).
Eclipse can make so many things in java drastically fast and easy. And I think that's where java shines. I'm yet to see as powerful an IDE for any other language. (Although I admit, I do not program for msft platforms and hence, never used msft ides)