Java 解析(分数计算器)
嗨,我需要帮助在我的分数计算器解析。我对Java和编程一无所知,我想知道是否有人能告诉我我的代码出了什么问题?我目前的目标是从给定的输入中创建不正确的分数 例如: 1_2 /3+2_3/4 应该像这样从控制台出来: 5/3+11/4 我真的不知道我现在的财产该怎么办。它只是打印输入。有人能告诉我我走的方向是否正确吗 我的问题 我没有得到我想要的输出。正在打印输入。我该怎么办Java 解析(分数计算器),java,eclipse,parsing,Java,Eclipse,Parsing,嗨,我需要帮助在我的分数计算器解析。我对Java和编程一无所知,我想知道是否有人能告诉我我的代码出了什么问题?我目前的目标是从给定的输入中创建不正确的分数 例如: 1_2 /3+2_3/4 应该像这样从控制台出来: 5/3+11/4 我真的不知道我现在的财产该怎么办。它只是打印输入。有人能告诉我我走的方向是否正确吗 我的问题 我没有得到我想要的输出。正在打印输入。我该怎么办 import java.util.Scanner; public class FracCalc { public
import java.util.Scanner;
public class FracCalc {
public static void main (String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Welcome to FracCalc");
System.out.println("Type expressions with fractions, and I will evaluate them.");
boolean isTrue = true;
String in = "";
while(isTrue) {
in = input.nextLine();
if (in.equals("quit")) {
System.out.println("Thanks for running FracCalc!");
isTrue = false;
}else{
System.out.println("You asked me to compute " + in);
}
}
}
public static String parse(String in){
int underscore = in.indexOf("_");
int slash = in.lastIndexOf("/");
String wholeStr = in.substring(0, underscore);
String numeratorStr = in.substring(underscore + 1,slash);
String denominatorStr = in.substring(slash + 1);
int whole = Integer.valueOf(wholeStr);
int numerator = Integer.valueOf(numeratorStr);
int denominator = Integer.valueOf(denominatorStr);
int newNumerator = whole * denominator + numerator;
String newS = newNumerator + " / " + denominator;
if (underscore<0 & slash<0) {
return wholeStr;
} else if (underscore<0 & slash>0) {
return numeratorStr + " / " + denominatorStr;
} else if (underscore>0 & slash>0) {
in = newS;
} else if (underscore>0 & slash<0) {
return "Error";
}
}
}
这不是一个真正的问题,请告诉我们,除了解析的编译错误和从未使用过的解析之外,您当前的代码还有什么问题我真的不知道。当我已经有返回时,为什么解析需要返回?因为某些路径不是像下划线和斜杠=0那样处理的,所以我应该更改整个if-else语句吗?