现存在一个坐标类Coordinate,包含经度longitude和纬度latitude,将多个经纬度元素存入List<Coordinate>中,使用迭代器遍历List<Coordinate>并修改其中所有的经度元素,给出具体实现代码
时间: 2024-09-20 21:16:27 浏览: 48
CoordinateSharp:一个旨在简化地理坐标格式转换并确定C#中的日光信息的库
在Java中,你可以通过创建一个`Coordinate`列表,并使用`Iterator`对每个元素进行操作来实现这个需求。以下是具体的代码示例:
```java
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
class Coordinate {
private double longitude;
private double latitude;
// 构造函数、getter和setter省略
public void setLongitude(double newLongitude) {
this.longitude = newLongitude;
}
}
public class Main {
public static void main(String[] args) {
// 创建一个Coordinate列表
List<Coordinate> coordinateList = new ArrayList<>();
coordinateList.add(new Coordinate(116.404, 39.904)); // 示例经纬度
coordinateList.add(new Coordinate(75.84, 13.08));
coordinateList.add(new Coordinate(-122.419, 37.774));
// 使用Iterator遍历并修改经度
Iterator<Coordinate> iterator = coordinateList.iterator();
while (iterator.hasNext()) {
Coordinate current = iterator.next();
// 修改经度
current.setLongitude(current.getLongitude() + 0.1); // 假设这里加了0.1作为演示
System.out.println("Modified Longitude: " + current.getLongitude());
}
// 打印修改后的列表中的所有坐标
for (Coordinate c : coordinateList) {
System.out.println(c);
}
}
}
```
在这个例子中,我们首先创建了一个`Coordinate`对象的列表,然后使用`Iterator`逐个访问每个元素,更新其经度属性。最后,我们打印出处理后的坐标信息。
阅读全文