我想知道如果Stream.of這將有可能取代下面的一段代碼:混合輸入的內容
Object o;
// o can be one of the two following things
o = Arrays.asList("Toto", "tata", "Titi");
o = "Test";
if (o instanceof List<?>) {
((List<?>) o).stream().forEach(System.out::println);
} else {
System.out.println(o);
}
通過更少的醜陋的東西用Stream.of
。我想到了這一點:
Object o;
// o can be one of the two following things
o = Arrays.asList("Toto", "tata", "Titi");
o = "Test";
Stream.of(o).forEach(System.out::println);
但顯然它不是作爲Stream.of(aList)
工作不「扁平化」的內容。
任何想法?我是在做一些不存在的東西嗎?
謝謝
PS。我不知道forEach
調用之前的Object
類型。這些代碼只是這個問題的一個簡單例子。
實際上,這部分解決了這個問題。我主要關心的是**我不知道調用之前的對象類型,它可以是列表或單個對象,我希望在之後進行流式處理。因爲我不知道對象類型,我不能在已經存在的列表上執行'Collections.singletonList' ... – Jerome