Java is perhaps second place in use to the more closely C-based languages, but it's a close enough second that I wouldn't worry too much about its applicability. More generally, I wouldn't worry too much about the applicability of the first language you learn - there are so many languages out there, each with their particular domain. Focus on learning concepts, and you won't have a hard time switching to whatever language is appropriate for the current task.
Regarding Java"s problem domain:
Java is often used for cross-platform applications with a graphical user interface, for cell phone applications, and on the server for generating web pages. The code that has already been written in Java in these areas is what makes it attractive for future projects in these areas - but no problem domain belongs explicitly to one language.
Getting a little technical:
Java is a statically typed and garbage collected language. This means that it is slightly more difficult to accidentally do unsafe things, and Integrated Development Environments (like Eclipse) can provide more help to the programmer, so Java is perhaps better suited to larger projects or projects that are likely to have programmers unfamiliar with the code base.
As a garbage collected language, Java is perhaps less well suited for programs with severe resource constraints or speed requirements (where C is generally preferred). As a statically typed language, it is less suited for rapid application development (where dynamically typed languages like Python, Ruby, and PHP are generally preferred).
More broadly, Java is also an imperative language, so its style is more familiar to most programmers, and it is better for telling the computer exactly how to do something, as opposed to, for example, functional languages (like Haskell), which may be better for describing what needs to be done, so that the computer can divide the work up as it needs to (but are not as good at dealing with things that change, like what's on the screen).