到目前为止,这是我的代码。
import java.util.Scanner;
public class two {
public static void main(String[] args) {
System.out.println("--- Stage 1 Taxi Fare Calculator ---");
Scanner user_input = new Scanner( System.in );
System.out.print("Enter in pick up time: ");
System.out.flush();
String startTime = user_input.next();
System.out.print("Enter in pickup point: ");
System.out.flush();
String pickUp = user_input.next();
System.out.print("Enter in drop off point: ");
System.out.flush();
String dropOff = user_input.next();
System.out.print("Enter in trip distance in km: ");
System.out.flush();
Double tripDist = user_input.nextDouble();
user_input.nextLine();
Double fareRate = 1.60;
Double baseFare = tripDist * fareRate;
Double totalFare = baseFare;
String m1 = "The pickup point was: %15s%n";
String m2 = "The drop off point was: %13s%n";
String m3 = "The pickup time was: %11s%n";
String m4 = "Estimated distance (km): %12f%n";
String m5 = "Fare Charged: $%11.2f%n";
String m6 = "Base fare: $%15.2f%n";
String m7 = "Total fare: $%14.2f%n";
String m8 = "Plus surcharges: $%14.2f%n";
System.out.println(" --- Taxi fare details --- ");
System.out.printf(m1, pickUp);
System.out.printf(m2, dropOff);
System.out.printf(m3, startTime);
System.out.printf(m4, tripDist);
System.out.printf(m5, fareRate);
System.out.printf(m6, baseFare);
System.out.printf(m7, totalFare);
}
}
EDIT2(最终):我已经为我的代码添加了更多内容,现在我们已经看到了上面所看到的内容,现在我需要做的就是增加附加费,所以当它在一定时间内支付一定的费用并且还需要额外收费时,无论如何不在那里寻求帮助只是让你们知道你已经帮了很多,我感谢你们。顺便说一下,如果我不应该像我一样编辑这个,我会道歉。
答案 0 :(得分:1)
如果您在阅读的同一行上声明了变量,那么您的代码可能会更短;如果您没有flush()
,那么您应该println()
,即
System.out.print("Enter in pick up time: ");
System.out.flush();
String startTime = user_input.next();
System.out.print("Enter in pickup point: ");
System.out.flush();
String pickUp = user_input.next();
System.out.print("Enter in drop off point: ");
System.out.flush();
String dropOff = user_input.next();
System.out.print("Enter in trip distance in km: ");
System.out.flush();
Double tripDist = user_input.nextDouble();
user_input.nextLine();
然后,您需要以String
(s),
String m1 = "The pickup point was: %s%n"; // %n or \n - both are newline
String m2 = "The drop off point was: %s%n";
String m3 = "The pickup time was: %s%n";
String m4 = "Estimated distance (km): %f%n";
String m5 = "Fare Charged: $%.2f%n";
String m6 = "Base fare: $%.2f%n";
String m7 = "Total fare: $%.2f%n";
接下来,当你调用printf()
时,你应该传递参数,而不是连接 -
System.out.printf(m1, pickUp);
System.out.printf(m2, dropOff);
System.out.printf(m3, startTime);
System.out.printf(m4, tripDist);
System.out.printf(m5, fareRate);
System.out.printf(m6, baseFare);
System.out.printf(m7, totalFare);
然后我认为它会按预期工作。