Hur skulle du vilja minimera denna Java-kod så man slipper repetera allt?
Jag har denna Java-kod. Så här ska det inte behöva se ut. Finns det något sätt där jag kan anropa en metod med tre parametrar (dropDown, MenuItem, void), där void är en privat metod. Då skulle detta gå mycket fortare istället för att skriva ut så här.
Vad tror ni? Jag använder tyvärr Java 8 fortfarande då jag utvecklar appar för Iphone och Android via GluonHQ's JavaFX ramverk.
/*
* Listener for data type
*/
dataTypeDropDown.selectedItemProperty().addListener(e->{
dataTypeMenuItem = dataTypeDropDown.getSelectedItem(); // Save
hideLabels();
});
/*
* Listener for delimiter
*/
delimiterDropDown.selectedItemProperty().addListener(e->{
delimiterMenuItem = delimiterDropDown.getSelectedItem(); // Save
reloadBatchLabels();
});
/*
* Listener for train data
*/
trainDataDropDown.selectedItemProperty().addListener(e->{
trainDataMenuItem = trainDataDropDown.getSelectedItem(); // Save
reloadBatchLabels();
});
/*
* Listener for eval data
*/
evalDataDropDown.selectedItemProperty().addListener(e->{
evalDataMenuItem = evalDataDropDown.getSelectedItem(); // Save
});
/*
* Listener for batch size
*/
batchSizeDropDown.selectedItemProperty().addListener(e->{
batchSizeMenuItem = batchSizeDropDown.getSelectedItem(); // Save
});
/*
* Listener for label index from
*/
labelIndexFromDropDown.selectedItemProperty().addListener(e->{
labelIndexFromMenuItem = labelIndexFromDropDown.getSelectedItem(); // Save
});
/*
* Listener for label index to
*/
labelIndexToDropDown.selectedItemProperty().addListener(e->{
labelIndexToMenuItem = labelIndexToDropDown.getSelectedItem(); // Save
});
/*
* Listener for possible labels
*/
numPossibleLabelsDropDown.selectedItemProperty().addListener(e->{
numPossibleLabelsMenuItem = numPossibleLabelsDropDown.getSelectedItem(); // Save
});
/*
* Listener for data normalization
*/
datanormalizerDropDown.selectedItemProperty().addListener(e->{
datanormalizerMenuItem = datanormalizerDropDown.getSelectedItem(); // Save
});