toRoman property
String
get
toRoman
转换为罗马数字
Implementation
String get toRoman {
if (this <= 0 || this > 3999) return toString();
const values = [1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1];
const symbols = [
'M',
'CM',
'D',
'CD',
'C',
'XC',
'L',
'XL',
'X',
'IX',
'V',
'IV',
'I'
];
String result = '';
int remaining = this;
for (int i = 0; i < values.length; i++) {
while (remaining >= values[i]) {
result += symbols[i];
remaining -= values[i];
}
}
return result;
}