# 4.1 - 连接到服务器

# 4.1.1 - 使用 telnet

telnet 是一种用于网络编程的非常强大的调试工具,可以在命令 shell 中输入 telnet 来启动它。

  • 注:在 Windows 中,需要激活 telnet。要激活它,需要到 “控制面板” ,选择 “程序” ,点击 “打开 / 关闭 Windows 特性”, 然后选择 “Telnet” 客户带复选框。

日期与时间类相关代码

LocalDate now = LocalDate.now();
        // 每个月的第 i 个星期一
        for (int i = -5; i <= 5; i++) {
            System.out.println("每个月的第" + i + "个星期一 : " + now.with(dayOfWeekInMonth(i, DayOfWeek.MONDAY)));
        }
        // 每个月的第一天
        System.out.println("每个月的第一天" + now.with(firstDayOfMonth()));
        // 下个月的第一天
        System.out.println("下个月的第一天" + now.with(firstDayOfNextMonth()));
        // 明年的第一天
        System.out.println("明年的第一天" + now.with(firstDayOfNextYear()));
        // 今年的第一天
        System.out.println("今年的第一天" + now.with(firstDayOfYear())
                // 这个月的第一个星期 i
        for (int i = 1; i <= 7; i++) {
            System.out.println("这个月的第一个星期" + i + " : " + now.with(firstInMonth(DayOfWeek.of(i))));
        }
        // 这个月的最后一天
        System.out.println("这个月的最后一天" + now.with(lastDayOfMonth()));
        // 今年的最后一天
        System.out.println("今年的最后一天" + now.with(lastDayOfYear()));
        // 这个月的最后一个星期 i
        for (int i = 1; i <= 7; i++) {
            System.out.println("这个月的最后一个星期" + i + " : " + now.with(lastInMonth(DayOfWeek.of(i))));
        }
        // 下一个星期 i (与下一个不同的是:假设今天星期六,那么当我查询下一个星期六时将会返回下周六的日期)
        for (int i = 1; i <= 7; i++) {
            System.out.println("下一个星期 " + i + " : " + now.with(next(DayOfWeek.of(i))));
        }
        // 下一个星期 i (与上一个不同的是:假设今天星期六,那么当我查询下一个星期六时将会返回今天的日期)
        for (int i = 1; i <= 7; i++) {
            System.out.println("下一个星期 " + i + " : " + now.with(nextOrSame(DayOfWeek.of(i))));
        }
        // 今天
        System.out.println("今天" + now.with(ofDateAdjuster(UnaryOperator.identity())));
        // 两天后
        System.out.println("两天后" + now.with(ofDateAdjuster(d -> d.plusDays(2))));