java 地铁费_Java练习题_Map集合,遍历车站编号及名称、计算地铁票价。
时间: 2024-03-09 16:44:44 浏览: 60
好的,我知道了。这是一个Java练习题,涉及Map集合、遍历车站编号及名称以及计算地铁票价。
首先,我们需要创建一个Map对象,用于存储车站编号和名称的对应关系。代码如下:
```java
Map<Integer, String> stationMap = new HashMap<>();
stationMap.put(1, "车公庙");
stationMap.put(2, "中心区");
stationMap.put(3, "华强北");
stationMap.put(4, "福田口岸");
stationMap.put(5, "市民中心");
// ... 其他车站编号和名称
```
然后,我们可以使用for循环遍历Map集合,输出车站编号和名称。代码如下:
```java
for (Map.Entry<Integer, String> entry : stationMap.entrySet()) {
System.out.println("车站编号:" + entry.getKey() + ",车站名称:" + entry.getValue());
}
```
接下来,我们需要根据起点站和终点站计算地铁票价。假设票价按照距离计算,每站之间的票价为2元。可以定义一个方法来实现这个功能。代码如下:
```java
public static double calculateFare(int startStation, int endStation) {
int distance = Math.abs(startStation - endStation);
double fare = distance * 2;
return fare;
}
```
最后,我们可以在主函数中调用这个方法来计算地铁票价。代码如下:
```java
int startStation = 1;
int endStation = 5;
double fare = calculateFare(startStation, endStation);
System.out.println("起点站:" + stationMap.get(startStation) + ",终点站:" + stationMap.get(endStation) + ",票价:" + fare + "元");
```
这样,我们就完成了这个练习题。完整代码如下:
```java
import java.util.HashMap;
import java.util.Map;
public class SubwayFare {
public static void main(String[] args) {
Map<Integer, String> stationMap = new HashMap<>();
stationMap.put(1, "车公庙");
stationMap.put(2, "中心区");
stationMap.put(3, "华强北");
stationMap.put(4, "福田口岸");
stationMap.put(5, "市民中心");
// ... 其他车站编号和名称
for (Map.Entry<Integer, String> entry : stationMap.entrySet()) {
System.out.println("车站编号:" + entry.getKey() + ",车站名称:" + entry.getValue());
}
int startStation = 1;
int endStation = 5;
double fare = calculateFare(startStation, endStation);
System.out.println("起点站:" + stationMap.get(startStation) + ",终点站:" + stationMap.get(endStation) + ",票价:" + fare + "元");
}
public static double calculateFare(int startStation, int endStation) {
int distance = Math.abs(startStation - endStation);
double fare = distance * 2;
return fare;
}
}
```
阅读全文