Declarative programming with L
One of the reasons I created org.ckkloverdos.collection.L, is to be able to adopt a more declarative style of programming, since this collection/array wrapper class makes it easy to do some functional-oriented programming.
The other day, I was playing around with the API of Package. At one point, I just wanted to see the loaded packages from my own ckkl-core library. The implementation, using L, is both simple and I believe elegant:
new L(Package.getPackages())
.selectProperty("name")
.filterStartsWith("org.ckkloverdos")
.print();
What would be the alternative in plain-old-Java?
Package[] packages = Package.getPackages();
for(int i = 0; i < packages.length; i++)
{
String name = packages[i].getName();
if(name.startsWith("org.ckkloverdos"))
{
System.out.println(name);
}
}
Tags: ckkl-core, declarative programming, java