public class DomainObject {
private final DataParser parser;
private final Map<String, String> header = new HashMap<>();
private final List<Data> data = new ArrayList<>();
public DomainObject(DataParser aParser) {
parser = aParser;
}
public String getHeaderField(String name) {
// Here we lazily parse and fill the header map
if (header.isEmpty()) {
header.addAll(parser.header());
}
return header.get(name);
}
public Iterable<Data> getMeasurementValues() {
// again lazy-load and parse the data
if (data.isEmpty()) {
data.addAll(parser.measurements());
}
return data;
}
}
// lazy and fast because the expensive operation will only execute when needed
if (aCondition() && expensiveOperation()) { ... }
// slow order (still lazy evaluated!)
if (expensiveOperation() && aCondition()) { ... }
public class DomainObject(parser: DataParser) {
// evaluated on first access
private lazy val header = { parser.header() }
def getHeaderField(name : String) : String = {
header.get(name).getOrElse("")
}
// evaluated on first access
lazy val measurementValues : Iterable[Data] = {
parser.measurements()
}
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有