铸造 - foreach - java

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)