Java程序实现循环从盘输入学生的年龄+(1)当输入的年龄小于0则提示年龄不能小?

Java程序实现循环从盘输入学生的年龄+(1)当输入的年龄小于0则提示年龄不能小?,第1张

题目要求:当输入的年龄小于0,则提示年龄不能小0,需要重新输入直到满足条件为止。

那么我们可以设置一个while循环,如果数据小于0,则需要不断输入:

while (a<0)  { //如果输入的年龄小于0,进行循环重新输入,直到大于0。

                 System.out.println("输入的学生年龄不能小于0,请重新输入:")

                 a = sca.nextInt()

                }

源程序:

源程序

程序运行结果,如果正确输入:

正确输入结果

如果中间有错误输入,例12岁输入了-12:

错误输入-12结果

输入-12后,如果再次不小心错误输入-12,则还需要接着输入直到大于0:

错误输入2次,则循环直到满足条件。

import java.util.Calendar

import java.util.Date

import java.awt.*

import java.awt.event.*

import java.text.NumberFormat

public class H {

public static void main(String args[]) {

new Time("年龄计算器")

}

}

class Time extends Frame implements ActionListener {

Calendar calendar

Button button

TextField t1, t2, t3

Label l, l1, l2, l3

Time(String s) {

super(s)

setLayout(new FlowLayout())

button = new Button("确定")

button.addActionListener(this)

t1 = new TextField(2)

t2 = new TextField(2)

t3 = new TextField(2)

l = new Label("请输入您的生日 ")

l.setBackground(Color.cyan)

l1 = new Label("年")

l2 = new Label("月")

l3 = new Label("日")

add(l)

add(t1)

add(l1)

add(t2)

add(l2)

add(t3)

add(l3)

add(button)

setBounds(100, 100, 280, 100)

addWindowListener(new WindowAdapter() {

public void windowClosing(WindowEvent e) {

System.exit(0)

}

})

setVisible(true)

validate()

}

public void actionPerformed(ActionEvent e) {

calendar = Calendar.getInstance()

calendar.setTime(new Date())

NumberFormat f = NumberFormat.getInstance()

long time = calendar.getTimeInMillis()

if (e.getSource() == button) {

try {

int n = Integer.parseInt(t1.getText())

int y = Integer.parseInt(t2.getText())

int r = Integer.parseInt(t3.getText())

calendar.set(n, y - 1, r)

double time1 = calendar.getTimeInMillis()

double c = (time - time1) / (1000 * 60 * 60 * 24)

double d = c/365

f.setMaximumFractionDigits(2)

String s = f.format(d)

l.setText("您的年龄约为" + s + " 岁")

} catch (NumberFormatException ee) {

l.setText("请正确输入")

}

}

}

}

功底浅薄,如果有问题,还望指教。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12004573.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-20
下一篇2023-05-20

发表评论

登录后才能评论

评论列表(0条)

    保存