java中,所构造的函数“跳不出”if语句

java中,需要定义一个“日期”类,其中要求检查日期是否“合法”,故而笔者构造了一个检查函数(即笔者代码中的“jiancha_riqi”)。之后笔者按照题目要求输入代码后,运行时,在输出“日期错误”后,仍然输出了错误的日期。(笔者试过了在检查函数里加入一个布尔类型的变量作为判断,但结果一样)
希望各位不吝赐教,万分感谢

笔者的代码如下:

img

img

img

img


所打印运行结果的截图:(未添加flag或者布尔类型变量的打印结果)

img

  1. 根据最后贴的代码,日期检查方法输出输入错误(flag=0,return仅对日期检查方法有效),然后继续执行了两个打印日期的方法,没什么问题。
  2. 建议代码格式化下,代码的可读性也是编程中重要的一环
  3. 对于多个分支的输出,不要输出一致的内容,或者多输出一些信息,保证输出的内容能够准确知道落入的条件

题目要求如下:

img

那个打印结果,因为无法对函数里面的参数flag进行判断(笔者不知道),加入flag和加入布尔类型变量的结果是一样的。

这代码格式也是没谁了,给个建议,所有的if都加{},且把需要在if或者else里一起执行的代码块用{}包裹,代码格式调整好
然后呢是输出正确日期格式和输入错误日期格式的方法调用放到一个if里,可不得一起输出 啊
总感觉这个代码编译都通不过呢

直接贴代码吧,这看着好难受