【发布时间】:2021-10-06 20:28:57
【问题描述】:
我正在尝试使用LocalDate Java 类并将其作为方法中的参数传递。当我在 main 方法中实例化方法时,我需要将 LocalDate 作为参数传递,当我尝试 '2019-08-16' 时,它说文字太多,当我尝试 "2019-08-16" 时,它说不能应用于 String。
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
public class LocalDateExample {
public void localDate(LocalDate date) {
String dayOfMonth = Integer.toString(date.getDayOfMonth());
System.out.println("Day Of Month is" + dayOfMonth); // this throws error
}
public static void main(String[] args) {
LocalDateExample dd = new LocalDateExample();
dd.localDate("2019-08-16"); // this line throws error
}
}
【问题讨论】:
-
你很亲密!因为您的
localDate方法接受LocalDate,所以您不能将String("2019-08-16") 传递给它。相反,您首先需要使用String创建一个LocalDate,如下所示:LocalDate.parse("2019-08-16") -
dd.localDate(LocalDate.parse("2019-08-16"));? -
'2019-08-16' it says too many literals建议您使用更高级的语言功能,而无需掌握可用的类型等语言基础知识。例如char类型代表字符,它的值 可以像'a'一样创建,例如char someCharacter = 'a';。注意char一次只能表示一个 字符,所以我们不能写char someCharacter = 'ab';,因为那是两个字符。目前我的建议是从基础开始学习 Java,然后转向面向对象的概念。 -
谢谢 Jacob、Dan 和 Pshemo,它成功了
-
这个问题完全可以重现,并且没有任何错字。投票重新开放。
标签: java string char java-time localdate