一道有趣的java练手题( 二 )

if-else改造的关键:在类初始化时 , 用list集合(容器)将所有的方法保存起来 , list有序 , 执行时会按照顺序执行 , Supplier函数是懒加载的 , 方法不会被执行 。
一道有趣的java练手题文章插图
if-else改造关键代码
【一道有趣的java练手题】注意:Supplier 用法
Supplier scaleneTriangle = Demo2::scaleneTriangle //简写//等价于Supplier scaleneTriangle = () -> scaleneTriangle();//等价于Supplier supplier = new Supplier() { @Overridepublic Fruit get() {return scaleneTriangle(); //需要存储的方法}};测试:
//测试public static void main(String[] args) {BigDecimal first, second, third;String choice;Scanner input=new Scanner(System.in);do {System.out.print("请输入第一条边:");first = input.nextBigDecimal();System.out.print("请输入第二条边:");second = input.nextBigDecimal();System.out.print("请输入第三条边:");third = input.nextBigDecimal();String message = getTriangle(first, second, third);//执行System.out.println(message);System.out.print("继续吗?(y/n):");choice=input.next();if (choice.equals("n")){System.out.println("谢谢使用!");break;}}while (choice.equals("y"));}测试结果:
一道有趣的java练手题文章插图
测试结果
百度知道 , 不知道什么原因没有审核成功 , 发到这里请大家指点一下 。