第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

Java 8流反向順序

Java 8流反向順序

瀟湘沐 2019-09-24 09:58:41
一般問題:反向流的正確方法是什么?假設(shè)我們不知道流包含什么類型的元素,反轉(zhuǎn)任何流的通用方法是什么?具體問題:IntStream提供了生成特定范圍內(nèi)整數(shù)的范圍方法IntStream.range(-range, 0),現(xiàn)在我想將其從0切換為負(fù)數(shù)將無法正常工作,也無法使用Integer::compareList<Integer> list = Arrays.asList(1,2,3,4);list.stream().sorted(Integer::compare).forEach(System.out::println);與IntStream我會得到這個(gè)編譯器錯(cuò)誤錯(cuò)誤:(191,0)ajc:sorted()類型中的方法IntStream不適用于參數(shù)(Integer::compare)我在這里想念什么?
查看完整描述

3 回答

?
萬千封印

TA貢獻(xiàn)1891條經(jīng)驗(yàn) 獲得超3個(gè)贊

優(yōu)雅的解決方案


List<Integer> list = Arrays.asList(1,2,3,4);

list.stream()

    .boxed() // Converts Intstream to Stream<Integer>

    .sorted(Collections.reverseOrder()) // Method on Stream<Integer>

    .forEach(System.out::println);


查看完整回答
反對 回復(fù) 2019-09-24
?
鳳凰求蠱

TA貢獻(xiàn)1825條經(jīng)驗(yàn) 獲得超4個(gè)贊

這里的許多解決方案都對進(jìn)行排序或反轉(zhuǎn)IntStream,但這不必要地需要中間存儲。Stuart Marks的解決方案是解決之道:


static IntStream revRange(int from, int to) {

    return IntStream.range(from, to).map(i -> to - i + from - 1);

}

它也可以正確處理溢出,并通過以下測試:


@Test

public void testRevRange() {

    assertArrayEquals(revRange(0, 5).toArray(), new int[]{4, 3, 2, 1, 0});

    assertArrayEquals(revRange(-5, 0).toArray(), new int[]{-1, -2, -3, -4, -5});

    assertArrayEquals(revRange(1, 4).toArray(), new int[]{3, 2, 1});

    assertArrayEquals(revRange(0, 0).toArray(), new int[0]);

    assertArrayEquals(revRange(0, -1).toArray(), new int[0]);

    assertArrayEquals(revRange(MIN_VALUE, MIN_VALUE).toArray(), new int[0]);

    assertArrayEquals(revRange(MAX_VALUE, MAX_VALUE).toArray(), new int[0]);

    assertArrayEquals(revRange(MIN_VALUE, MIN_VALUE + 1).toArray(), new int[]{MIN_VALUE});

    assertArrayEquals(revRange(MAX_VALUE - 1, MAX_VALUE).toArray(), new int[]{MAX_VALUE - 1});

}


查看完整回答
反對 回復(fù) 2019-09-24
  • 3 回答
  • 0 關(guān)注
  • 1951 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號