dev-diary
Sep 6th, 2023
Decimal format:
public class MoneyPoundsFormat {
private final double calcCharge;
private final DecimalFormat decimalFormat;
public MoneyPoundsFormat(final double calcCharge, final String format) {
this.calcCharge = calcCharge;
this.decimalFormat = new DecimalFormat(format);
}
public String display() {
return this.decimalFormat.format(this.calcCharge);
}
}
Test:
public class TestMoneyPoundsFormat {
MoneyPoundsFormat moneyPoundsFormat;
@Before
public void init() {
moneyPoundsFormat = new MoneyPoundsFormat(10.00, "£0.00");
}
@Test
public void testPoundsMoneyFormat() {
assertEquals("£10.00", moneyPoundsFormat.display());
}
}
BaseEmployer:
public class BaseEmployee {
private final String name;
public BaseEmployee(String name) {
this.name = name;
}
}
public class LevelOneEmployee extends BaseEmployee {
private final String levelOneName;
public LevelOneEmployee(String levelOneName, String name) {
super(name);
this.levelOneName = levelOneName;
}
}
public class LevelTwoEmployee extends LevelOneEmployee {
private final String levelTwoName;
public LevelTwoEmployee(String levelTwoName, String levelOneName, String name) {
super(levelOneName, name);
this.levelTwoName = levelTwoName;
}
}
Test:
public class EmployeeTest {
@Test
public void testEmployeeLevels() {
List<BaseEmployee> employees = new ArrayList<>();
BaseEmployee baseEmployee = new BaseEmployee("miles");
LevelOneEmployee levelOneEmployee = new LevelOneEmployee("level1", "bob");
LevelTwoEmployee levelTwoEmployee = new LevelTwoEmployee("level2", "level1", "bob");
employees.add(baseEmployee);
employees.add(levelOneEmployee);
employees.add(levelTwoEmployee);
assertEquals(BaseEmployee.class, employees.get(0).getClass());
assertEquals(LevelOneEmployee.class, employees.get(1).getClass());
assertEquals(LevelTwoEmployee.class, employees.get(2).getClass());
}
}
May 4th, 2022:
Java 17 switch object:
public String checkObject(Object obj) {
return switch (obj) {
case String h -> "String";
default -> "It is an object";
};
}
May 1st, 2022:
Gallery github repo is using r2dbc.