我正在尝试建立一个非常简单的平均速度公式,该公式需要输入英里和小时,并给出每小时的平均速度。忍受我,因为我昨天确实开始学习Java。我不尝试做小数或任何我只想从公式中得到直接结果的事情。
public class AverageSpeed {
public static void main(String[] args) {
System.out.println("Please enter the distance you travelled in miles: ");
Scanner sc = new Scanner(System.in);
String Miles = sc.nextLine();
System.out.println("Please enter the time in hours, it has taken to travel this distance. ");
Scanner sc = new Scanner(System.in);
String Hours = sc.nextInt();
int distance = Integer.parseInt(Miles);
int time = Integer.parseInt(Hours);
int averagespeed = distance / time;
System.out.println("You were travelling an average speed " + averagespeed + " miles per hours.");
}
}
我收到错误消息:duplicate local variable sc
。我知道我使用的扫描仪完全错误。我不知道如何修复扫描仪部件并使公式正常工作。而且我没有足够的经验来修复或完全理解命令。
答案 0 :(得分:0)
您当前已经定义了RestaurantDetailRDD
,因此您必须更改其值,而不是使用相同的名称来创建新值:
RDD
但是,您不需要这样做。只需在sc
变量中创建一个扫描仪即可。
如果要获得更精确的结果,请考虑将sc = new Scanner(System.in);
的类型更改为float
或double
。
答案 1 :(得分:0)
由于在第4行和第7行中两次声明了 sc 而收到此错误。您无需多次实例化Scanner,同一实例将可用于多个输入。另外,在第8行
String Hours = sc.nextInt();
您以String类型存储int值是不正确的,这是完全错误的。
下面的代码将满足要求,
import java.util.Scanner;
public class AverageSpeed {
public static void main(String[] args) {
System.out.println("Please enter the distance you travelled in miles: ");
Scanner sc = new Scanner(System.in);
String miles = sc.nextLine();
System.out.println("Please enter the time in hours, it has taken to travel this distance. ");
String hours = sc.nextLine();
int distance = Integer.parseInt(miles);
int time = Integer.parseInt(hours);
int averagespeed = distance / time;
System.out.println("You were travelling an average speed " + averagespeed + " miles per hours.");
}
}
此外,仅建议变量名称应以小写字母多数民众赞成在Java约定开头。