Kol*_*sar 2 java foreach for-loop casting list
我有一个像这样的方法:
private void myMethod(List<?> myLists) {
for (Object val : myLists) {
val.getMyOtherMethod(); // for example
}
}
Run Code Online (Sandbox Code Playgroud)
我怎样才能投射val到我的一个物体?
我的所有对象(列表对象)都包含相同的方法,如as getMyOtherMethod()
BR
编辑:------------------------------------------------ ---------------------
我打了几次myMethod,如:
List<MyClas.MySubclass1> var1;
List<MyClas.MySubclass2> var1;
List<MyClas.MySubclass3> var1;
...
...
myMethod(var1);
myMethod(var2);
myMethod(var3);
Run Code Online (Sandbox Code Playgroud)
在这种情况下,我不知道,我发送的子类是MySubclass1,MySubclass2或MySubclass3.这对foreach循环很重要.
Pet*_*rey 11
你需要一个实现getMyOtherMethod()的元素列表
interface ImplementsGetMyOtherMethod {
void getMyOtherMethod();
}
private void myMethod(List<? extends ImplementsGetMyOtherMethod> myLists) {
Run Code Online (Sandbox Code Playgroud)