I want to convert a Date in to Russian and using the code below
SimpleDateFormat.getDateInstance(SimpleDateFormat.LONG,locale).format(date);
<
For Java 8 you can use a new pattern.
In short:
The "LLLL" pattern will get a Nominative case:
new SimpleDateFormat("LLLL", Locale.getDefault()).format(date); // январь
The "MMMM" pattern will return a String in Genitive case:
new SimpleDateFormat("MMMM", Locale.getDefault()).format(date); // января
Alternatively, instead of hardcoding Russian months in array (since we have Polish, Ukrainian and other languages), you could use the java.time.Month enum. It contains both months int number and String name.