Java utility library that provides observable values, bindings with lazy evaluation and more. like JavaFX but simplified
<dependency>
<groupId>com.github.saar25</groupId>
<artifactId>JProperty</artifactId>
<version>1.1.5</version>
</dependency>
final IntProperty intProperty = new SimpleIntProperty(8);
final FloatProperty floatProperty = new SimpleFloatProperty(1.7f);
final ObjectProperty<Object> objectProperty = new SimpleObjectProperty<>(new Object());
final ReadOnlyIntProperty readOnlyIntProperty = new SimpleIntProperty();
final ReadOnlyFloatProperty readOnlyFloatProperty = new SimpleFloatProperty();
intProperty.addListener(e -> {
System.out.println("Changed" +
" from " + e.getOldValue() +
" to " + intProperty.get());
});
intProperty.set(5); // Prints output
intProperty.set(5); // Does not print output
intProperty.set(1); // Prints output
final IntProperty aProperty = new SimpleIntProperty(8);
final IntProperty bProperty = new SimpleIntProperty(3);
final IntBinding expression = Bindings.add(aProperty, bProperty);
System.out.println(a.get()) // Prints 11