import java.io.File;
import java.util.Scanner;
public class scoresedit {
public static void main(String[] args) throws Exception{
System.out.println("Reads in a file at the beginning of a loop, displays these top 3 scores by name and their respective score." +
"\nEnter a new name and score following a prompt. " +
"\nIf the new name and score exceeds one of the top three scores," +
"\nplaces the new name in the top three, moving all lower scores down, dropping the lowest score." +
"\nSaves the results in the file top3Scores.txt." +
"\nStops the loop when exit is entered for a name.");
File r = new File ("top3Scores.txt");
System.out.println(r);
String str = readSource (r);
System.out.println(str);
String[] strArray = new String[] {str};
Scanner in = new Scanner(System.in);
System.out.print("Enter a new name and score or 'exit' to quit:");
String nameAndScore = in.nextLine();
String[] nameAndScoreArray = new String[] {nameAndScore};
String nameAndScoreArray1[] = nameAndScore.split(" ");
while (nameAndScore != "exit") {
if (nameAndScoreArray[1] > strArray[1]) }
}
private static String readSource(File r) throws Exception{
Scanner in;
in = new Scanner (r);
String str = "";
while (in.hasNext())
str += in.nextLine() +"\n";
in.close();
return str;
}
}
我一直收到错误“运算符>未定义参数类型java.lang.String,java.lang.String”当我尝试比较两个数组而我不知道如何修理它。代码没有完成;很明显我在if语句下添加了更多,但我想先解决这个问题。
答案 0 :(得分:6)
您正在尝试比较nameAndScoreArray[1]
和strArray[1]
哪些是字符串,我假设它们包含两个团队的分数,而得分最高的一个获胜,因此您希望使用{{1} }以便查看哪一个得分最高:
Integer.parseInt(String string)
答案 1 :(得分:4)
您无法将String
与运算符<
,>
进行比较,而是需要使用compareTo。