iamaamir

Age Calculator (JAVA 8)

Apr 21st, 2016
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.63 KB | None | 0 0
  1. import java.time.LocalDate;
  2. import static java.time.temporal.ChronoUnit.DAYS;
  3. import javafx.application.Application;
  4. import javafx.geometry.Pos;
  5. import javafx.scene.Scene;
  6. import javafx.scene.control.DatePicker;
  7. import javafx.scene.control.Button;
  8. import javafx.scene.control.Label;
  9. import javafx.scene.layout.HBox;
  10. import javafx.stage.Stage;
  11.  
  12. /**
  13.  *
  14.  * @author Aamir khan
  15.  */
  16. public class AgeCalculator extends Application {
  17.  
  18.     Label result = new Label("");
  19.  
  20.     @Override
  21.     public void start(Stage window) throws Exception {
  22.         HBox root = new HBox();
  23.         root.setAlignment(Pos.CENTER);
  24.         root.setStyle("-fx-padding:20px; -fx-spacing:10px");
  25.        
  26.         DatePicker birthDate = new DatePicker();
  27.        
  28.         Button calBtn = new Button("Calculate");
  29.         calBtn.setDefaultButton(true);
  30.        
  31.         root.getChildren().addAll(new Label("Select your B'date"),birthDate, calBtn, result);
  32.  
  33.         calBtn.setOnAction(e -> {
  34.             calculate(LocalDate.now(), birthDate.getValue());
  35.         });
  36.         window.setScene(new Scene(root, 800, 80));
  37.         window.setTitle("How old Are You?");
  38.         window.show();
  39.     }
  40.  
  41.     private void calculate(LocalDate currentDate, LocalDate birthDate) {
  42.         final long DAYS_BETWEEN = DAYS.between(birthDate, currentDate);
  43.         final long YEARS = DAYS_BETWEEN / 365;
  44.         final long MONTHS = (DAYS_BETWEEN % 365) / 30;
  45.         String calculatedResult = String.format("You are %d Years and %d Months old", YEARS, MONTHS);
  46.         result.setText(calculatedResult);
  47.     }
  48.  
  49.     public static void main(String[] args) {
  50.         launch(args);
  51.     }
  52. }
Add Comment
Please, Sign In to add comment