Суммирование в таблице - Java

Узнай цену своей работы

Формулировка задачи:

Всем привет у меня возникла проблема мне нужно что бы данные из таблицы суммировались и записывались в строку итоги как это можно сделать ?

Решение задачи: «Суммирование в таблице»

textual
Листинг программы
import javafx.application.Application;
import javafx.beans.property.SimpleObjectProperty;
import javafx.collections.FXCollections;
import javafx.scene.Scene;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableView;
import javafx.stage.Stage;
 
public class TableViewClass extends Application {
 
    @Override
    public void start(Stage primaryStage) throws Exception {
        TableView<Budget> table = new TableView<>(FXCollections.observableArrayList(
                new Budget(500, -450),
                new Budget(600, -300)
        ));
        table.setColumnResizePolicy(TableView.CONSTRAINED_RESIZE_POLICY);
        TableColumn<Budget, Integer> column1 = new TableColumn<>("Зарплата");
        column1.setCellValueFactory(param -> new SimpleObjectProperty<>(param.getValue().getSalary()));
        TableColumn<Budget, Integer> column2 = new TableColumn<>("Расходы");
        column2.setCellValueFactory(param -> new SimpleObjectProperty<>(param.getValue().getSpending()));
        TableColumn<Budget, Integer> column3 = new TableColumn<>("Итого");
        column3.setCellValueFactory(param -> {
            Budget b = param.getValue();
            return new SimpleObjectProperty<>(b.getSalary() + b.getSpending());
        });
        table.getColumns().addAll(column1, column2, column3);
 
        primaryStage.setScene(new Scene(table));
        primaryStage.show();
    }
}
 
class Budget {
    private int salary;
    private int spending;
 
    public Budget(int salary, int spending) {
        this.salary = salary;
        this.spending = spending;
    }
 
    public int getSalary() {return salary;}
    public void setSalary(int salary) {this.salary = salary;}
 
    public int getSpending() {return spending;}
    public void setSpending(int spending) {this.spending = spending;}
}

Оцени полезность:

7   голосов , оценка 4.143 из 5