Java:代码洁癖

带题

写代码越来越喜欢,越少越好,看着舒服,整齐……把Java越来越写的像Python吗?看起来也不像,毕竟还有那么多的大括号.今晚遇到的这个问题,进一步让人觉得Java1.8的方便了,虽然熟悉用法花了一些时间.不过用起来还是特别好用啊..睡觉.

java标志
image-2260

源代码

注意:需最低Java 1.8 版本运行环境!

/**
* Created by puruidong on 2015/4/9.
*/
public class TestDemo {
public static void main(String[] args) {
System.out.println("输入一个数字[默认起始年份是?:");
int startYear = 1900;//起始年份.
List list = new ArrayList<>();
chooseYear(startYear, list);//获取所有闰年.
list.forEach(s -> System.out.print(s + "\t"));
System.out.println("\n----------上面是所有闰年,下面才开始输入---------长度超过:" + list.size());
int nu = new Scanner(System.in).nextInt();
if (nu < list.size()) System.out.println(list.get(nu)); else { System.out.println("逗比,越界了!!!你自己丢掉了这次机会~"); System.exit(-1); } } /** * 关于闰年的 这个数组中有100个闰年{4,8....},然后做个 输入 ,输入后可以得出 输入的第几个数的闰年是多少 * *param year * @param startYear * @return */ private static List chooseYear(int startYear, List year) {
for (; startYear < LocalDate.now().getYear(); startYear += 1) year.add(startYear); Predicate yeas = s -> s % 100 == 0 && s % 400 == 0;
return year.stream().filter(yeas.or(s -> s % 100 != 0 && s % 4 == 0)).collect(Collectors.toList());
}
}

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据