您的位置:首页 > 其它

【软件测试】闰年问题(不考虑非法输入)

2015-04-05 23:03 495 查看
问题描述

输入年份,输出输入年份是否为闰年(不考虑非法输入)

一个年份是闰年的条件是:

该年份能被4整除但是不能被100整除或

该年份能被400整除

代码实现



import javax.swing.JOptionPane;

import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.geometry.Pos;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import javafx.scene.layout.HBox;
import javafx.stage.Stage;

public class task extends Application {

public static void main(String[] args) {
// TODO Auto-generated method stub
task.launch( args );
}

private TextField textfield = new TextField();

@Override
public void start(Stage arg0) throws Exception {
// TODO Auto-generated method stub
arg0.setTitle( "Testing" );

HBox hbox = new HBox( 8 );
textfield.setPrefColumnCount( 25 );
hbox.setAlignment( Pos.CENTER_LEFT );
Button btn = new Button();
btn.setText( "提交" );
btn.setOnAction( new Listener() );
hbox.getChildren().addAll( new Label( "  请输入年份: "), textfield, btn );

arg0.setScene( new Scene( hbox, 460, 50 ));
arg0.show();
}

public class Listener implements EventHandler<ActionEvent> {

@Override
public void handle(ActionEvent arg0) {
// TODO Auto-generated method stub
String str = textfield.getText();
String inf = "";
if( isLeap( Integer.parseInt( str ) ) ) {
inf = "输入年份为闰年";
}
else {
inf = "输入年份非闰年";
}

JOptionPane.showMessageDialog( null, inf, "information",
JOptionPane.INFORMATION_MESSAGE );
}
}

private boolean isLeap( int year ) {
if( year % 4 != 0 ) {
return false;
}
else if( year % 100 != 0 ) {
return true;
}
else if( year % 400 != 0 ) {
return false;
}
else {
return true;
}
}
}


测试用例

编号输入预测输出
11963不能被4整除输入年份非闰年
21964能被4整除但是不能被100整除输入年份为闰年
31900能被4整除能被100整除但是不能被400整除输入年份非闰年
42000能被400整除输入年份为闰年
测试结果







内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: