El método minus() de la clase Período en Java se usa para restar la cantidad dada de período del período especificado. Esta función opera por separado en AÑO, MES y DÍA.
Nota: No se realiza la normalización. 12 meses y 1 año son diferentes.
Sintaxis:
public Period minus(TemporalAmount amountToSubtract)
Parámetros: este método acepta un solo parámetro , cantidad a restar , que es la cantidad a restar de este período. No debe ser nulo.
Valor de retorno: este método devuelve un Período basado en el período dado con el período solicitado restado, y esto no debe ser nulo.
Excepciones:
- DateTimeException : esta excepción se devuelve si la cantidad especificada tiene una cronología que no es ISO o contiene una unidad no válida.
- ArithmeticException : esta excepción se detecta si se produce un desbordamiento numérico.
Los siguientes programas ilustran el método anterior:
Programa 1 :
// Java code to show the function minus() // to subtract the two given periods import java.time.Period; import java.time.temporal.ChronoUnit; public class PeriodDemo { // Function to subtract two given periods static void subtractPeriod(Period p1, Period p2) { System.out.println(p1.minus(p2)); } // Driver Code public static void main(String[] args) { // Defining first period int year = 4; int months = 11; int days = 10; Period p1 = Period.of(year, months, days); // Defining second period int year1 = 2; int months1 = 7; int days1 = 8; Period p2 = Period.of(year1, months1, days1); subtractPeriod(p1, p2); } }
Producción:
P2Y4M2D
Programa 2 :
// Java code to show the function minus() // to subtract the two given periods import java.time.Period; import java.time.temporal.ChronoUnit; public class PeriodDemo { // Function to subtract two given periods static void subtractPeriod(Period p1, Period p2) { System.out.println(p1.minus(p2)); } // Driver Code public static void main(String[] args) { // Defining second period int year1 = 2; int months1 = 7; int days1 = 8; Period p1 = Period.of(year1, months1, days1); // Defining first period int year = 4; int months = 11; int days = 10; Period p2 = Period.of(year, months, days); subtractPeriod(p1, p2); } }
Producción:
P-2Y-4M-2D
Referencia : https://docs.oracle.com/javase/8/docs/api/java/time/Period.html#minus-java.time.temporal.TemporalAmount-