If you want to create games then learn C++ for it. Java is not a stable programming language for developing games. Professional developers used C++ for developing the games.
If you want to learn Java the try the following online resources for it-
http://docs.oracle.com/...index.html
http://thenewboston.org/tutorials.php
http://www.tutorialspoint.com
-----------------------------
As you are a beginner, you should use a game engine for developing games rather than depending fully on a programming language for creating the functionality of a game. You can start with Unity game engine as its UI is easy to learn and also uses three scripting languages for developing games- JavaScript, C# and Boo. You can start with JavaScript which is also easy to learn.
Unity game engine have two version- one is free and other is pro version. You can download the free version from its official site. Here is the link for it-
http://unity3d.com/unity/download
Unity Video tutorials and Documentation link- http://unity3d.com/learn
With Unity game engine you can create good 2D and 3D graphics game, and also it has support for multiple platforms.