pta中java中计算火车运行的时间代码怎么写
时间: 2024-12-17 07:24:53 浏览: 58
在Java中,假设我们有一个简单的铁路网络模型,其中包含车站和列车的信息,并且我们要计算从一个站到另一个站的最短时间。我们可以创建一个类`Train`来表示列车,以及一个`RailwayStation`类来代表车站,每个车站都有连接其他车站的列表。这里是一个简化版的示例代码:
```java
import java.util.ArrayList;
import java.util.List;
class RailwayStation {
String name;
List<RailwayStation> connections; // 存储相邻车站
public RailwayStation(String name) {
this.name = name;
connections = new ArrayList<>();
}
void connect(RailwayStation station) {
connections.add(station);
}
}
class Train {
int speed; // 列车速度 (单位可能是km/h)
int travelTimeBetweenStations; // 在两站之间行驶的时间 (单位可能是小时)
// 添加更多关于列车属性和方法...
}
public class Main {
public static void main(String[] args) {
RailwayStation stationA = new RailwayStation("Station A");
RailwayStation stationB = new RailwayStation("Station B");
// 假设stationA到stationB需要2小时,反之也是2小时
stationA.connect(stationB);
stationB.connect(stationA);
Train train = new Train();
train.speed = 100; // 假设列车速度100km/h
// 计算总时间
double totalTravelTime = calculateTotalTravelTime(train, stationA, stationB);
System.out.println("Total travel time from " + stationA.name + " to " + stationB.name + ": " + totalTravelTime + " hours");
}
private static double calculateTotalTravelTime(Train train, RailwayStation start, RailwayStation end) {
double timeToFirstStop = train.travelTimeBetweenStations;
if (start != end) {
RailwayStation current = start;
while (!current.equals(end)) {
timeToFirstStop += train.travelTimeBetweenStations;
current = current.connections.get(current.connections.indexOf(end)); // 查找下一个车站
}
}
return timeToFirstStop;
}
}
```
这个例子中,`calculateTotalTravelTime`函数会遍历整个路线,每次增加一节车厢的行驶时间直到到达终点站。这只是一个基础的模型,实际应用中可能会更复杂,包括考虑列车停靠时间、站点之间的实时时刻表等。
阅读全文
相关推荐


















