Example: Days in the Settlement Date Period

In this example, the settlement date is 11/11/86. The number of days in the coupon period containing this date is returned.
import com.imsl.finance.*;
import java.text.*;
import java.util.*;

public class coupdaysEx1 {
    static final DateFormat dateFormat = 
    DateFormat.getDateInstance(DateFormat.SHORT,  Locale.US);
    
    static private GregorianCalendar parse(String s) throws ParseException {
        GregorianCalendar cal = new GregorianCalendar();
        cal.setTime(dateFormat.parse(s));
        return cal;
    }
    
    public static void main(String args[]) throws ParseException {
        GregorianCalendar settlement = parse("11/11/86");
        GregorianCalendar maturity = parse("3/1/99");
        int freq = Bond.SEMIANNUAL;
        DayCountBasis dcb = DayCountBasis.BasisActual365;
        double coupdays = Bond.coupdays(settlement, maturity, freq, dcb);
        System.out.println("The number of days in the coupon period that " +
        "contains the settlement date is " + coupdays);
    }
}

Output

The number of days in the coupon period that contains the settlement date is 182.5
Link to Java source.