所以我正在尝试制作一个从罗马数字到整数的转换器。我到目前为止是这样的:
public int toNumber(String n){
int number = 0;
int first = 1;
int last = 0;
String substring = n.substring (last, first);
while(substring.equals("I")){
number = number+1;
last = last +1;
first=first +1;
}
while(substring.equals("V")){
number = number+5;
last = last +1;
first=first +1;
}
return number;
}
显然我现在只有 I 和 V,但是当我创建一个测试类来尝试这个时,它什么也没返回,并且一直让我换行。
作为记录,这是我的测试员课程
import java.util.Scanner;
public class Tester{
public static void main (String[] args){
RomanNumeralConverter quantity = new RomanNumeralConverter();
Scanner user_input = new Scanner(System.in);
//this is for roman to number
System.out.println("input roman numeral");
String j = user_input.nextLine();
int g = quantity.toNumber(j);
System.out.println(g);
}
}
我几乎完全确定这是一个逻辑问题,但我不知道是什么,我觉得我已经尝试了我能想到的一切