What kind of apps are you aiming for?
For simple to large 2D games and mobile apps not game related I would recommend App Game Kit.
It's easy to learn, does 70% of the graphical optimization and 60% of the code optimization for you, most promising is that it's made for mobile games and focused on it, so you seldom get problems with it.
Has a C++ option works best with Basic
For very large and graphically large games Cocos2D is the best.
This is for large 2D games like Final Fantasy Brave Exvius, where even the the game looks simple it has a huge amount of animations and the summonings uses small "videos" that most engines just don't expect.
A bit difficult to learn although more than worth it, does 90% of graphical and 20% of code related optimization for you. Allows manual control over any part of the engine; important for unique games.
Works with C++.
For mid range 2D to simple 3D games Unity is a good engine.
Unity is flexible. Even if it isn't optimized for small 2D games or large 3D games, both can be achieved if you are willing to spend the time and money on it.
Unity has a weird difficulty curve, very easy to learn the basics and a pain to learn the fundamentals. Does 30% of graphical optimization, 40% of code and has a translator that allows you to use any of it's languages and get the results you want.
Works with JavaScript and C#, leaning more towards JavaScript.
C# and JavaScript is similar to Java so you should be able to use them from the start. Especially because you will be using a lot of in build Unity functions.
Also mentioning the Unreal engine here, because it is getting much better at mobiles and mobiles them self improve very fast.
Unreal is a AAA engine out of the box, no need to download or pay for any engine tools. It is the best 3D engine and has a good 2D engine. The problem is that for 2D games there is just a huge amount of even better engines.
Unreal isn't a great choice for small games, because it comes with a huge amount of 3D optimizations that causes bottle necks when working with low poly or 2D games. However you might be willing to deal with it just to have access to all the tools.
Unreal uses C++ and Blueprints that is a visual scripting language.