目的:阿拉伯数字转换成罗马数字
要求:1.能够根据自己的需求输入相应的阿拉伯数字
2.实现自动转换成罗马数字
详细代码如下:
import java.util.Scanner;
public class Practice11 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str;
while(true){
System.out.println("请输入一些数字");
str = sc.next();
boolean flag = checkStr(str);
if (flag) {
break;
}else {
System.out.println("当前输入不符合规则,请重新输入");
continue;
}
}
StringBuilder sb = new StringBuilder();
for (int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
int number = c - 48;
String s = changeLuoMa(number);
sb.append(s);
}
System.out.println(sb);
}
public static boolean checkStr(String str){
if(str.length() > 9){
return false;
}
for (int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
if (c < '0' || c > '9') {
return false;
}
}
return true;
}
public static String changeLuoMa(int number){
String[] arr = {"","Ⅰ","Ⅱ","Ⅲ","Ⅳ","Ⅴ","Ⅵ","Ⅶ","Ⅷ","Ⅸ"};
return arr[number];
}
}
运行结果如下:
请输入一些数字
123456789
ⅠⅡⅢⅣⅤⅥⅦⅧⅨ