Pretty straightforward to translate to a Java version:
import java.util.HashMap;
public class pgaTram {
private static HashMap<Character, Integer> rtoa = loadRTOA();
public static void main(String[] args) {
String[] testdata = { "XLII", "LXIX", "mi" };
for (String t : testdata) {
System.out.println(t + ": " + romanToDec(t));
}
}
public static int romanToDec(String s) {
int t = 0;
for (char c : s.toCharArray()) {
int n = rtoa.get(Character.toUpperCase(c));
t += n - t % n * 2;
}
return t;
}
private static HashMap<Character, Integer> loadRTOA() {
HashMap<Character, Integer> rtoa = new HashMap<Character, Inte
+ger>();
rtoa.put('M', 1000);
rtoa.put('D', 500);
rtoa.put('C', 100);
rtoa.put('L', 50);
rtoa.put('X', 10);
rtoa.put('V', 5);
rtoa.put('I', 1);
return rtoa;
}
}