จาวา-ยังไงฉันพาคู่เดทที่นำเข้าข้อมูลและสามารถเพิ่ม/ลองวัน/เดือน/ปี

0

คำถาม

ฉันกำลังใช้รหัสและฉันไม่รู้ถ้ามันมีหนทางที่จะเพิ่มหรือลองวันที่ฉันนำเข้าข้อมูลกับ Scanner(System.in)

Scanner scanner = new Scanner(System.in);
System.out.println("Date: ");
String date = scanner.next();
SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy");
Date date2=null;
try {
    date2 = dateFormat.parse(date);
} catch (ParseException e) {
    e.printStackTrace();
}
date intellij-idea java
2021-11-21 02:51:00
2

คำตอบที่ดีที่สุด

1

จาวา.เวลา

ไม่เคยใช้เรียนมรดกตกทอด Date แล้ว SimpleDateFormat. ใช้เพียง กาแฟเวลา การเรียนการสอน

DateTimeFormatter f = DateTimeFormatter.ofPattern( "MM/dd/uuuu" ) ;
LocalDate ld = LocalDate.parse( input , f ) ;

เพื่อเพิ่มและลบโทรเรียก plus… แล้ว minus… วิธีการของ.

LocalDate later = ld.plusDays( 3 ) ;
LocalDate earlier = ld.minusYears( 7 ) ;
2021-11-21 06:15:13

ฉันควรจะยังใช้เครื่องแสกนที่ชั้นเรียนเพื่อเอาข้อมูล
brae

@brae ใช่คนส่วนหนึ่งของรหัสอ่านของผู้ใช้นำเข้าข้อมูลคือ....ไม่เปลี่ยนแปลงจากคำถาม เพียงรหัสในคำตอบคิดเอาเองว่าคนถือตัวแปรในข้อความอ่านจากเครื่องสแกนเป็นที่ชื่อ input มากกว่า date.
Ole V.V.
0

คุณสามารถแปลงเป็นคู่เดทไป LocalDate. มันมีอีกวิธีการเหมือน plusYears(),plusMonths(),plusDays().

    // Date -> LocalDate
    private static LocalDate of(Date date) {
        Instant instant = date.toInstant();
        return instant.atZone(ZoneId.systemDefault()).toLocalDate();
    }
 
    // LocalDate -> Date
    private static Date of(LocalDate localDate) {
        Instant instant = localDate.atStartOfDay(ZoneId.systemDefault()).toInstant();
        return Date.from(instant);
    }
2021-11-21 03:14:08

ของคุณ conversions ถูกต้องแต่งปฏิบัติการดีกช่วยโดยไม่ได้ใช้ Date ชั้นเรียนตลอดและจึงไม่ต้องการที่ conversions.
Ole V.V.

ในภาษาอื่นๆ

หน้านี้อยู่ในภาษาอื่นๆ

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

ดังอยู่ในนี้หมวดหมู่

ดังคำถามอยู่ในนี้หมวดหมู่