0% found this document useful (0 votes)
37 views

Java Experiment 8

Java lab exprements

Uploaded by

msai78276
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
37 views

Java Experiment 8

Java lab exprements

Uploaded by

msai78276
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 7

a) Write a JAVA program that import and use the user defined packages

source code:

package com.example;

public class Calculator {

public int add(int a, int b) {

return a + b;

public int subtract(int a, int b) {

return a - b;

public int multiply(int a, int b) {

return a * b;

public int divide(int a, int b) {

if (b != 0) {

return a / b;

} else {

throw new ArithmeticException("Cannot divide by zero!");

Compile: javac -d . Calculator.java

Source code:

import com.example.Calculator;

public class PackageExample {

public static void main(String[] args) {

Calculator calculator = new Calculator();

int result = calculator.add(5, 3);

System.out.println("Addition: " + result);

result = calculator.subtract(5, 3);

System.out.println("Subtraction: " + result);


result = calculator.multiply(5, 3);

System.out.println("Multiplication: " + result);

result = calculator.divide(10, 2);

System.out.println("Division: " + result);

Output:

Addition: 8

Subtraction: 2

Multiplication: 15

Division: 5

b) Without writing any code, build a GUI that display text in label and image in an

ImageView (use JavaFX)

Source code:

import javafx.application.Application;

import javafx.scene.Scene;

import javafx.scene.control.*;

import javafx.scene.layout.*;

import javafx.event.ActionEvent;

import javafx.event.EventHandler;

import javafx.scene.control.Label;

import javafx.stage.Stage;

public class label extends Application

public void start(Stage s)

s.setTitle("creating label");

Label b = new Label("This is a label");

StackPane r = new StackPane();

r.getChildren().add(b);
Scene sc = new Scene(r, 200, 200);

s.setScene(sc);

s.show();

public static void main(String args[])

launch(args);

Output:

c) Build a Tip Calculator app using several JavaFX components and learn how to respond to

user interactions with the GUI

source code:

import javafx.application.Application;

import javafx.geometry.Insets;

import javafx.scene.Scene;

import javafx.scene.control.Button;

import javafx.scene.control.Label;

import javafx.scene.control.TextField;

import javafx.scene.layout.GridPane;

import javafx.stage.Stage;
public class Main extends Application {

private TextField num1Field;

private TextField num2Field;

private Label resultLabel;

public static void main(String[] args) {

launch(args);

@Override

public void start(Stage primaryStage) {

primaryStage.setTitle("Basic Calculator");

GridPane grid = new GridPane();

grid.setHgap(10);

grid.setVgap(10);

grid.setPadding(new Insets(10, 10, 10, 10));

num1Field = new TextField();

num1Field.setPromptText("Enter first number");

GridPane.setConstraints(num1Field, 0, 0);

num2Field = new TextField();

num2Field.setPromptText("Enter second number");

GridPane.setConstraints(num2Field, 0, 1);

resultLabel = new Label("Result: ");

GridPane.setConstraints(resultLabel, 0, 2);

Button addButton = new Button("Add");


addButton.setOnAction(e -> performOperation('+'));

GridPane.setConstraints(addButton, 1, 0);

Button subtractButton = new Button("Subtract");

subtractButton.setOnAction(e -> performOperation('-'));

GridPane.setConstraints(subtractButton, 2, 0);

Button multiplyButton = new Button("Multiply");

multiplyButton.setOnAction(e -> performOperation('*'));

GridPane.setConstraints(multiplyButton, 1, 1);

Button divideButton = new Button("Divide");

divideButton.setOnAction(e -> performOperation('/'));

GridPane.setConstraints(divideButton, 2, 1);

grid.getChildren().addAll(num1Field, num2Field, resultLabel, addButton, subtractButton,


multiplyButton, divideButton);

Scene scene = new Scene(grid, 300, 200);

primaryStage.setScene(scene);

primaryStage.show();

private void performOperation(char operator) {

String num1Text = num1Field.getText();

String num2Text = num2Field.getText();

if (isValidNumber(num1Text) && isValidNumber(num2Text)) {

double num1 = Double.parseDouble(num1Text);

double num2 = Double.parseDouble(num2Text);

double result = 0.0;


switch (operator) {

case '+':

result = num1 + num2;

break;

case '-':

result = num1 - num2;

break;

case '*':

result = num1 * num2;

break;

case '/':

if (num2 != 0) {

result = num1 / num2;

} else {

resultLabel.setText("Result: Error (Division by zero)");

return;

break;

default:

break;

resultLabel.setText("Result: " + result);

} else {

resultLabel.setText("Result: Invalid Input");

private boolean isValidNumber(String text) {

return text.matches("-?\\d*\\.?\\d+");
}

Output:

You might also like