Merhaba,
java'nın çok derinliğine girmeye gerek yok, java çok geniş bir dildir ve bir çok framework u vardır. Android uygulama yapmak için orta seviye java bilgisi yeterlidir.
Eğer android için java kullanacaksan, android in kendi kütüphanesi mevcut, bazı işleri androidin bu kütüphanesiyle yapacaksın o yüzden java yı tümden bilmene gerek yok.
sorduğun diğer soruya gelince harfleri tersten yazdırmak, harf saydırmak v.s. bunlar temel programlama dili ile yapılan şeylerdir. Yani bunları zaten bilmek zorundasın. Bahsettiğin şeylerin zorluğu yok, temel döngülerle, string fonksiyonlarıyla yapılabilir.
Benim kastettiğim java nın ileri seviyesindeki kütüphanelere gerek yok (spring gibi) ama söylediğin şeyleri öğrenmek zorundasın

Çünkü o döngülere, algoritmalara ihtiyacın olacak.
peki ne kadar java öğrenmek gerek? google da java for android developing diye aratırsan konuları görebilirsin..
Öncellikle teşekkürler, yukarıda yazdıklarımın kolaylık ya da zorluktan daha ziyade C de yaptığım(yapabildiğim) şeyleri tekrar java da yapmak istememden dolayı sordum.Bir kaç eğitim videosu buldum onda da işte çarpım tablosu gibi yapan program gibi bişey çıkınca sinir oluyor insan ya da ben.İstiyorum ki sonunda bir ürün olsun.Konsol da yazıp yazıp, silmekten daha ziyade ortada çalışan bir ürün bekliyorum yani.Her şeyin başı algoritma olsa da javaya komple ihtiyaç olmadığını düşünürsek javadan sonra androide geçmek yerine android üzerinden javayı öğrenmek sanırım daha pratik.