«java-stream» etiketlenmiş sorular

Akış API'sının kullanımı ile ilgili sorular için bu etiketi kullanın. Java 8'de tanıtıldı ve koleksiyonlardaki filtre-harita-azaltma boru hatları gibi değer akışlarında işlevsel stil işlemlerini destekler.

4
Java 8'de türü dönüştüren azaltma yöntemi için neden bir birleştirici gereklidir?
combinerAkışlar reduceyönteminde yerine getirdiği rolü tam olarak anlamakta zorlanıyorum . Örneğin, aşağıdaki kod derlenmez: int length = asList("str1", "str2").stream() .reduce(0, (accumulatedInt, str) -> accumulatedInt + str.length()); Derleme hatası: (bağımsız değişken uyuşmazlığı; int, java.lang.String biçimine dönüştürülemez) ancak bu kod derlenir: int length = asList("str1", "str2").stream() .reduce(0, (accumulatedInt, str ) -> accumulatedInt …
142 java  java-8  java-stream 

4
Java 8: Akışların Koleksiyonlara Karşı Performansı
Java 8'de yeniyim. Hala API'yi derinlemesine bilmiyorum, ancak yeni Streams API'nin performansını eski iyi Koleksiyonlarla karşılaştırmak için küçük bir gayri resmi karşılaştırma yaptım. Test, bir listeyi filtrelemek Integerve her çift sayı için kare kökü hesaplamak ve bunun bir sonucu Listolarak saklamaktan oluşur Double. İşte kod: public static void main(String[] args) …

7
Java 8'de lambda kullanarak bir Haritası <K, V> başka bir Haritaya <K, V> nasıl dönüştürebilirim?
Java 8'e bakmaya başladım ve son zamanlarda yazdığım çok basit bir şeyi yeniden yazmaya çalışacağımı düşündüğüm lambdasları denemek için. Yeni harita sütun ilk harita sütunun savunma bir kopyası olduğu sütun dizeye başka bir harita dize bir dize Haritası açmak gerekiyor. Sütun bir kopya oluşturucuya sahiptir. Şimdiye kadar aldığım en yakın …
140 java  map  lambda  java-8  java-stream 

6
Java akışları gerçekten sadece hata ayıklama için bakmak mı?
Java akışları hakkında okuyorum ve devam ederken yeni şeyler keşfediyorum. Bulduğum yeni şeylerden biri peek()işlevdi. Gözden geçirdiğim hemen hemen her şey, akışlarınızın hata ayıklaması için kullanılması gerektiğini söylüyor. Her bir Hesabın bir kullanıcı adı, şifre alanı ve bir login () ve loginIn () yöntemine sahip olduğu bir Akışım olsaydı ne …
137 java  java-8  java-stream  peek 

1
Java 8 Stream ile bazı sınıf özelliklerinden nasıl Liste alabilirim?
Bir List&lt;Person&gt;. Bir lazım Listbir özelliğinden Person. Örneğin, bir Personsınıfım var: class Person { private String name; private String birthDate; public String getName() { return name; } public String getBirthDate() { return birthDate; } Person(String name) { this.name = name; } } List&lt;Person&gt; personList = new ArrayList&lt;&gt;(); personList.add(new Person("David")); personList.add(new …



3
Ölçütlerle eşleşen ilk öğeyi getir
Bir akıştaki bir ölçütle eşleşen ilk öğe nasıl elde edilir? Bunu denedim ama çalışmıyor this.stops.stream().filter(Stop s-&gt; s.getStation().getName().equals(name)); Bu ölçüt çalışmıyor, filtre yöntemi Stop dışındaki bir sınıfta çağrılıyor. public class Train { private final String name; private final SortedSet&lt;Stop&gt; stops; public Train(String name) { this.name = name; this.stops = new TreeSet&lt;Stop&gt;(); …
122 java  java-8  java-stream 

10
"Akışın zaten çalıştırıldığını veya kapatıldığını" önlemek için bir akışı kopyalayın
Bir Java 8 akışını kopyalamak istiyorum, böylece onunla iki kez ilgilenebilirim. collectListe olarak yapabilirim ve bundan yeni akışlar alabilirim; // doSomething() returns a stream List&lt;A&gt; thing = doSomething().collect(toList()); thing.stream()... // do stuff thing.stream()... // do other stuff Ama daha verimli / zarif bir yol olması gerektiğini düşünüyorum. Akışı bir koleksiyona …


6
Akışın / Listenin son öğesini tek satırda alın
Aşağıdaki kodda bir akışın veya listenin son öğesini nasıl alabilirim? Nerede data.careasbir olduğunu List&lt;CArea&gt;: CArea first = data.careas.stream() .filter(c -&gt; c.bbox.orientationHorizontal).findFirst().get(); CArea last = data.careas.stream() .filter(c -&gt; c.bbox.orientationHorizontal) .collect(Collectors.toList()).; //how to? Gördüğünüz gibi ilk unsuru kesin filterolarak elde etmek zor değil. Ancak son öğeyi tek satırda almak gerçek bir acıdır: …
119 java  list  java-8  java-stream 


20
Bir akıştan ardışık çiftler toplayın
Gibi bir akış verildiğinde { 0, 1, 2, 3, 4 }, onu en zarif şekilde verilen forma nasıl dönüştürebilirim: { new Pair(0, 1), new Pair(1, 2), new Pair(2, 3), new Pair(3, 4) } (tabii ki, çift sınıfını tanımladığımı varsayarak)? Düzenleme: Bu kesinlikle girişler veya ilkel akışlarla ilgili değildir. Cevap, her …
103 java  java-8  java-stream 

15
Toplu işleme özelliğine sahip Java 8 Stream
Bir öğe listesi içeren büyük bir dosyam var. Bir grup öğe oluşturmak istiyorum, bu grupla bir HTTP isteği yapmak istiyorum (tüm öğeler HTTP isteğinde parametre olarak gereklidir). Bunu bir fordöngü ile çok kolay bir şekilde yapabilirim , ancak Java 8 aşığı olarak bunu Java 8'in Akış çerçevesi ile yazmayı denemek …

7
Java 8 Akışının boş olup olmadığı nasıl kontrol edilir?
A'nın Streamboş olup olmadığını nasıl kontrol edebilirim ve değilse bir istisna atabilirim, terminal dışı bir işlem olarak? Temel olarak, aşağıdaki koda eşdeğer bir şey arıyorum, ancak aradaki akışı gerçekleştirmeden. Özellikle, akış fiilen bir terminal işlemi tarafından tüketilmeden önce kontrol gerçekleştirilmemelidir. public Stream&lt;Thing&gt; getFilteredThings() { Stream&lt;Thing&gt; stream = getThings().stream() .filter(Thing::isFoo) .filter(Thing::isBar); …
100 java  java-8  java-stream 

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.