class Solution {
public int romanToInt(String s) {
int result = 0;
int preValue = getValue(s.charAt(0));
int value = 0;
for(int i = 1;i < s.length();i++){
value = getValue(s.charAt(i));
//只对前一个数做加减运算
if(value > preValue){
result -= preValue;
}else{
result += preValue;
}
preValue = value;
}
//只对前一个数做加减运算
result += preValue;
return result;
}
private int getValue(char ch){
switch(ch){
case 'I':
return 1;
case 'V':
return 5;
case 'X':
return 10;
case 'L':
return 50;
case 'C':
return 100;
case 'D':
return 500;
case 'M':
return 1000;
default:
return 0;
}
}
}