Java 持续时间 Class,无法解析为类型
Java Duration Class, cannot resolve to a type
我试图找到 HH:MM:SS 格式的两个 LocalTime 对象之间的时间差异,我的持续时间对象给我错误 Duration.between 无法解析为类型 。 Java 文档中的描述明确指出 LocalTime 对象是有效的——我是否必须将我的对象转换为具有 Duration 区域的 LocalDateTime 对象才能工作?
关于这个问题的唯一其他理论是我将这个 class 放置在我的 Make 文件中,但我认为我的导入会在编译期间解决这个问题。代码如下:
import java.time.*;
import java.time.Duration;
public class Station {
int stationNumber;
String stationAddress;
ArrayList<Driver> drivers;
ArrayList<Road> roads;
double[][] roadMap;
public Station(int sNumber, String sAddress) {
stationNumber = sNumber;
stationAddress = sAddress;
drivers = new ArrayList<Driver>();
roads = new ArrayList<Road>(5);
roadMap = new double[5][5];
}
public static void calculateNewTimes(ArrayList<roadDataToBeSorted> delDataIncreasingTime) {
LocalTime firstStop = LocalTime.parse(delDataIncreasingTime.get(0).rdDeliveryTime);
LocalTime lastStop = LocalTime.parse(delDataIncreasingTime.get(delDataIncreasingTime.size()-1).rdDeliveryTime);
Duration duration = new Duration.between(firstStop, lastStop); ***<-----ISSUE***
between
是Duration
class的静态工厂方法,返回一个Duration
对象。
因此您不需要使用 new
关键字创建 Duration
对象。
Duration duration = Duration.between(firstStop, lastStop);
我试图找到 HH:MM:SS 格式的两个 LocalTime 对象之间的时间差异,我的持续时间对象给我错误 Duration.between 无法解析为类型 。 Java 文档中的描述明确指出 LocalTime 对象是有效的——我是否必须将我的对象转换为具有 Duration 区域的 LocalDateTime 对象才能工作?
关于这个问题的唯一其他理论是我将这个 class 放置在我的 Make 文件中,但我认为我的导入会在编译期间解决这个问题。代码如下:
import java.time.*;
import java.time.Duration;
public class Station {
int stationNumber;
String stationAddress;
ArrayList<Driver> drivers;
ArrayList<Road> roads;
double[][] roadMap;
public Station(int sNumber, String sAddress) {
stationNumber = sNumber;
stationAddress = sAddress;
drivers = new ArrayList<Driver>();
roads = new ArrayList<Road>(5);
roadMap = new double[5][5];
}
public static void calculateNewTimes(ArrayList<roadDataToBeSorted> delDataIncreasingTime) {
LocalTime firstStop = LocalTime.parse(delDataIncreasingTime.get(0).rdDeliveryTime);
LocalTime lastStop = LocalTime.parse(delDataIncreasingTime.get(delDataIncreasingTime.size()-1).rdDeliveryTime);
Duration duration = new Duration.between(firstStop, lastStop); ***<-----ISSUE***
between
是Duration
class的静态工厂方法,返回一个Duration
对象。
因此您不需要使用 new
关键字创建 Duration
对象。
Duration duration = Duration.between(firstStop, lastStop);