Period dan aritmetik tarikh
Tambah dan tolak tarikh
Period dan aritmetik tarikh ialah pelajaran Java Academy percuma di CoddyKit. Ini ialah pelajaran 3 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Java Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Java Academy merangkumi sejumlah 4 pelajaran.
Amaun Berasaskan Tarikh
Walaupun Duration mengukur masa dalam jam dan saat, Period mengukur amaun dalam tahun, bulan dan hari. Inilah alat yang sesuai untuk pengiraan kalendar seperti umur dan tarikh akhir.
Menambah Hari
LocalDate menyediakan plusDays untuk bergerak ke hadapan. Ingat bahawa hasilnya ialah nilai baharu yang tidak boleh diubah.
import java.time.LocalDate;
public class Main {
public static void main(String[] args) {
LocalDate start = LocalDate.of(2026, 5, 30);
System.out.println(start.plusDays(10));
}
}Menambah Bulan dan Tahun
plusMonths dan plusYears menganjak mengikut unit yang lebih besar serta mengendalikan panjang bulan dengan betul.
import java.time.LocalDate;
public class Main {
public static void main(String[] args) {
LocalDate start = LocalDate.of(2026, 1, 31);
System.out.println(start.plusMonths(1));
System.out.println(start.plusYears(2));
}
}Menolak Tarikh
Gunakan minusDays, minusWeeks dan kaedah yang serupa untuk bergerak ke belakang dalam masa.
import java.time.LocalDate;
public class Main {
public static void main(String[] args) {
LocalDate date = LocalDate.of(2026, 5, 30);
System.out.println(date.minusWeeks(2));
}
}Mencipta Tempoh Kalendar
Bina Period dengan of atau kaedah kilang satu unit seperti ofMonths, kemudian tambahkannya pada tarikh.
import java.time.LocalDate;
import java.time.Period;
public class Main {
public static void main(String[] args) {
Period p = Period.of(1, 2, 3);
LocalDate date = LocalDate.of(2026, 1, 1);
System.out.println(date.plus(p));
}
}Tempoh Antara Tarikh
Period.between mengukur jarak antara dua tarikh dalam tahun, bulan dan hari.
import java.time.LocalDate;
import java.time.Period;
public class Main {
public static void main(String[] args) {
LocalDate from = LocalDate.of(2020, 1, 15);
LocalDate to = LocalDate.of(2026, 5, 30);
Period p = Period.between(from, to);
System.out.println(p.getYears() + "y " + p.getMonths() + "m " + p.getDays() + "d");
}
}Mengira Umur
Kegunaan klasik Period.between ialah mengira umur seseorang dalam tahun penuh.
import java.time.LocalDate;
import java.time.Period;
public class Main {
public static void main(String[] args) {
LocalDate birth = LocalDate.of(2000, 6, 15);
LocalDate today = LocalDate.of(2026, 5, 30);
int age = Period.between(birth, today).getYears();
System.out.println(age);
}
}Mengira Jumlah Hari
Period memecahkan jarak kepada tahun, bulan dan hari. Untuk mendapatkan satu jumlah keseluruhan hari, gunakan ChronoUnit.DAYS.between pula.
import java.time.LocalDate;
import java.time.temporal.ChronoUnit;
public class Main {
public static void main(String[] args) {
LocalDate from = LocalDate.of(2026, 1, 1);
LocalDate to = LocalDate.of(2026, 12, 31);
long days = ChronoUnit.DAYS.between(from, to);
System.out.println(days);
}
}Fleksibiliti ChronoUnit
ChronoUnit boleh mengira dalam banyak unit: DAYS, WEEKS, MONTHS dan YEARS. Setiap panggilan between mengembalikan satu nombor.
import java.time.LocalDate;
import java.time.temporal.ChronoUnit;
public class Main {
public static void main(String[] args) {
LocalDate from = LocalDate.of(2026, 1, 1);
LocalDate to = LocalDate.of(2026, 12, 31);
System.out.println(ChronoUnit.WEEKS.between(from, to));
System.out.println(ChronoUnit.MONTHS.between(from, to));
}
}Mencari Hari Minggu Seterusnya
Kelas TemporalAdjusters menyediakan pelarasan pintar, seperti beralih ke hari pertama bulan hadapan.
import java.time.LocalDate;
import java.time.temporal.TemporalAdjusters;
public class Main {
public static void main(String[] args) {
LocalDate date = LocalDate.of(2026, 5, 30);
System.out.println(date.with(TemporalAdjusters.firstDayOfNextMonth()));
}
}Period Berbanding ChronoUnit
Gunakan Period apabila anda mahukan pecahan manusia dalam tahun, bulan dan hari. Gunakan ChronoUnit.between apabila anda mahukan satu jumlah keseluruhan dalam satu unit.
Semakan Pantas
Uji kemahiran pengiraan tarikh anda.
Ringkasan
Anda telah mempelajari pengiraan tarikh:
plusDays,plusMonthsdanplusYearsmenganjak tarikh tanpa mengubahnyaPeriodmengukur tahun, bulan dan hari, sesuai untuk mengira umurPeriod.betweenmemberikan pecahan manusia bagi jarak tersebutChronoUnit.betweenmemberikan satu jumlah keseluruhan dalam unit yang dipilihTemporalAdjustersmengendalikan lompatan pintar seperti hari pertama bulan hadapan
Pelajari Java dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 104
- Pelajaran
- 374
Soalan Lazim
Adakah pelajaran “Period dan aritmetik tarikh” percuma?
Ya — teks penuh “Period dan aritmetik tarikh” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Java Academy, tingkat taraf kepada CoddyKit PRO. Kursus Java Academy merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “Period dan aritmetik tarikh”?
Tambah dan tolak tarikh Anda berlatih Java Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Java Academy?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Java Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 3 daripada 4.
Berapa lamakah pelajaran “Period dan aritmetik tarikh” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Java Academy ini?
Ya. Setiap pelajaran Java Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- LocalDate, LocalTime, LocalDateTime
- Instant dan Duration
- Period dan aritmetik tarikh
- Pemformatan dengan DateTimeFormatter