java的类型转换让人忍不住在开始编码前骂一声  FUCK!

1  子类转父类 up

List<SubClass> subs = ...;
List<? extends BaseClass> bases = subs;

2 父类转子类 down

//强转
public
class TestA {} public class TestB extends TestA{} List<TestB> variable = (List<TestB>)(List<?>) collectionOfListA;



3 stream方式

 

collection.stream()
    .filter(obj -> obj instanceof ScheduleIntervalContainer)
    .map(obj -> (ScheduleIntervalContainer) obj)

 

 

 

参考:

https://stackoverflow.com/questions/933447/how-do-you-cast-a-list-of-supertypes-to-a-list-of-subtypes

https://stackoverflow.com/questions/35743525/java-8-stream-cast-list-items-to-type-of-subclass

相关文章:

  • 2022-01-11
  • 2021-08-04
  • 2022-01-03
  • 2021-11-14
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-11-13
  • 2022-12-23
  • 2021-11-18
  • 2021-11-30
相关资源
相似解决方案