The "official" compiler is that which ships with the Sun Microsystems version of the Java Development Kit.
Since the Java language and platform are fully specified, there are various other implementations of the Java environment; for example, both Oracle and IBM sell products which incorporate their own Java Runtime Environments, etc.
You mentioned "C# Express" in your question, by which I assume you meant the version of Visual Studio Express that supports C#; Visual Studio is an integrated development environment, which provides source code editing, refactoring, and debugging facilities, and interacts with the compiler and build processes on your behalf. If you're looking for an IDE for Java, then you might want to take a look at NetBeans (which is sponsored by Sun) or Eclipse.