java得到控制台输入的年月日(yyyy,m,d)
时间: 2024-03-21 08:37:38 浏览: 84
您可以使用Java中的Scanner类来获取控制台输入的年月日。以下是一个示例代码:
```java
import java.util.Scanner;
public class ConsoleInputExample {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入年份:");
int year = scanner.nextInt();
System.out.print("请输入月份:");
int month = scanner.nextInt();
System.out.print("请输入日期:");
int day = scanner.nextInt();
System.out.println("输入的日期为:" + year + "-" + month + "-" + day);
scanner.close();
}
}
```
在这个示例中,我们首先创建一个Scanner对象来读取控制台输入。然后,我们使用nextInt()方法分别读取年、月、日的输入,并将它们存储在相应的整数变量中。最后,我们将这些变量组合成一个字符串并输出到控制台上。
注意,在使用Scanner类之后,我们需要调用其close()方法来释放相关资源。
相关问题
Java中,根据输入的年月,在控制台输出当月的日历
在Java中,你可以使用`java.time`包下的`MonthDay`和`YearMonth`类来创建并打印指定月份的日历。以下是一个简单的示例,展示如何获取并输出给定年月的日历:
```java
import java.time.LocalDate;
import java.time.MonthDay;
import java.time.format.DateTimeFormatter;
public class CalendarPrinter {
public static void main(String[] args) {
// 输入年月
int year = 2023; // 例如2023年的日历
int month = 12; // 例如十二月
try {
// 创建MonthDay对象
MonthDay dateOfMonth = MonthDay.of(year, month);
// 使用DateTimeFormatter将MonthDay转换成字符串格式
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM");
String formattedDate = dateOfMonth.format(formatter);
// 输出年月
System.out.println("Calendar for " + formattedDate + ":");
// 获取该月的日历,Java标准库并没有直接提供获取日历的功能,你需要手动填充
LocalDate startDate = LocalDate.of(year, month, 1);
while (startDate.getMonthValue() == month) {
System.out.printf("%4d", startDate.getDayOfMonth()); // 填充空格
startDate = startDate.plusDays(1);
}
System.out.println(); // 添加换行符
} catch (Exception e) {
System.err.println("Error: " + e.getMessage());
}
}
}
```
注意:这个例子中并未实际生成完整的日历列表,因为Java核心API本身并不直接提供按天数逐个输出日历的功能。在实际应用中,你可能需要结合其他库如Google的Jodatime等来实现。
java 格式化日期 年月日
在Java中,可以使用SimpleDateFormat类来格式化日期。以下是一个示例代码,演示如何格式化日期为年月日的格式:
```java
import java.text.SimpleDateFormat;
import java.util.Date;
public class DateFormatExample {
public static main(String[] args) // 创建一个SimpleDateFormat对象,指定日期格式
SimpleDateFormat = new SimpleDateFormat("yyyy-MM-dd");
// 获取当前日期
Date currentDate = new Date();
使用SimpleDateFormat对象将日期格式化为指定格式的字符串
String formattedDate = sdf.format(currentDate);
// 输出格式化后的日期字符串
System.out.println("Formatted Date: " + formattedDate);
}
}
```
在上面的示例中,我们创建了一个SimpleDateFormat对象,并通过构造函数传入日期格式"yyyy-MM-dd",表示年月日的格式。然后,我们使用format()方法将当前日期格式化为指定格式的字符串。最后,我们将格式化后的日期字符串输出到控制台。
你也可以根据需要自定义日期格式,例如"MM/dd/yyyy"表示月日年的格式,"dd/MM/yyyy"表示日月年的格式等。只需将对应的日期格式传递给SimpleDateFormat的构造函数即可。
阅读全文