我有一段使用Wrapper的代码,从原始接口继承而来。基于枚举类型,我将调用链表的方法,如putFirst(T data),putCurrent(T data),putLast(),removeFirst()等...
...
@Override
public void put(T data, EnumPosition position) {
switch (position) {
case FIRST:
abstrList.putFirst();
break;
case LAST:
abstrList.putLast();
break;
...
default:
throw new NoSuchElementException("something exception...");
}
@Override
public void remove(T data, EnumPosition position) {
switch (position) {
case FIRST:
abstrList.removeFirst(data);
break;
case LAST:
abstrList.removeLast(data);
break;
...
default:
throw new NoSuchElementException("something exception...");
}
我的EnumPosition现在看起来很简单。(可能可以改变它实现一些接口)
public enum EnumPosition {
FIRST, LAST, CURRENT ...
我想问一下,是否可以使用Java 8中的lambda或其他方法,通过多态性来替换这个开关以使其更加有效?谢谢您的帮助。