«java-8» etiketlenmiş sorular

Java platformunun 18 Mart 2014'te yayınlanan sürüm 8'i (iç sayı 1.8) olan Java 8'e özgü sorular için bu etiketi kullanın. Çoğu durumda, java etiketini de belirtmeniz gerekir.




4
Akışta Java 8 foreach döngüsü kullanarak sonraki öğeye git
Döngüdeki sonraki öğeye geçmeye çalışan Java 8 akışıyla ilgili bir sorun yaşıyorum. Komutu continue;sadece return;çalışıyor gibi ayarlayamıyorum ancak bu durumda döngüden çıkacaksınız. Döngüdeki bir sonraki maddeye geçmem gerekiyor. Bunu nasıl yapabilirim? Örnek (çalışmıyor): try(Stream<String> lines = Files.lines(path, StandardCharsets.ISO_8859_1)){ filteredLines = lines.filter(...).foreach(line -> { ... if(...) continue; // this command doesn't …
127 java  java-8 


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-> 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<Stop> stops; public Train(String name) { this.name = name; this.stops = new TreeSet<Stop>(); …
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<A> 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 …

3
Java8'de Saat Dilimi ile LocalDateTime'ı biçimlendirme
Şu basit koda sahibim: DateTimeFormatter FORMATTER = DateTimeFormatter.ofPattern("yyyyMMdd HH:mm:ss.SSSSSS Z"); LocalDateTime.now().format(FORMATTER) O zaman şu istisnayı alacağım: java.time.temporal.UnsupportedTemporalTypeException: Unsupported field: OffsetSeconds at java.time.LocalDate.get0(LocalDate.java:680) at java.time.LocalDate.getLong(LocalDate.java:659) at java.time.LocalDateTime.getLong(LocalDateTime.java:720) at java.time.format.DateTimePrintContext.getValue(DateTimePrintContext.java:298) at java.time.format.DateTimeFormatterBuilder$OffsetIdPrinterParser.format(DateTimeFormatterBuilder.java:3315) at java.time.format.DateTimeFormatterBuilder$CompositePrinterParser.format(DateTimeFormatterBuilder.java:2182) at java.time.format.DateTimeFormatter.formatTo(DateTimeFormatter.java:1745) at java.time.format.DateTimeFormatter.format(DateTimeFormatter.java:1719) at java.time.LocalDateTime.format(LocalDateTime.java:1746) Bu sorun nasıl çözülür?
121 java  java-8  java-time 

9
Lambda ifadelerinin kod satırlarını kaydetmekten başka bir kullanımı var mı?
Lambda ifadelerinin kod satırlarını kaydetmekten başka bir kullanımı var mı? Lambdas tarafından sağlanan, çözülmesi kolay olmayan sorunları çözen özel özellikler var mı? Gördüğüm tipik kullanım, bunu yazmak yerine şudur: Comparator<Developer> byName = new Comparator<Developer>() { @Override public int compare(Developer o1, Developer o2) { return o1.getName().compareTo(o2.getName()); } }; Kodu kısaltmak için …
120 java  lambda  java-8 

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<CArea>: CArea first = data.careas.stream() .filter(c -> c.bbox.orientationHorizontal).findFirst().get(); CArea last = data.careas.stream() .filter(c -> 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 

4
CompletableFuture | thenApply vs thenCompose
thenApply() Ve arasındaki farkı anlayamıyorum thenCompose(). Öyleyse, birisi geçerli bir kullanım durumu sağlayabilir mi? Java belgelerinden: thenApply(Function<? super T,? extends U> fn) CompletionStageBu aşama normal olarak tamamlandığında, sağlanan işlevin argümanı olarak bu aşamanın sonucuyla çalıştırılan yeni bir döndürür . thenCompose(Function<? super T,? extends CompletionStage<U>> fn) CompletionStageBu aşama normal olarak tamamlandığında, …

3
Yeni tarih saat API'sini kullanarak bir tarihi biçimlendirme
Yeni tarih saati API'siyle oynuyordum ama bunu çalıştırırken: public class Test { public static void main(String[] args){ String dateFormatted = LocalDate.now() .format(DateTimeFormatter .ofPattern("yyyy-MM-dd HH:mm:ss")); System.out.println(dateFormatted); } } Atar: Exception in thread "main" java.time.temporal.UnsupportedTemporalTypeException: Unsupported field: HourOfDay at java.time.LocalDate.get0(LocalDate.java:680) at java.time.LocalDate.getLong(LocalDate.java:659) at java.time.format.DateTimePrintContext.getValue(DateTimePrintContext.java:298) at java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.format(DateTimeFormatterBuilder.java:2543) at java.time.format.DateTimeFormatterBuilder$CompositePrinterParser.format(DateTimeFormatterBuilder.java:2182) at java.time.format.DateTimeFormatter.formatTo(DateTimeFormatter.java:1745) at java.time.format.DateTimeFormatter.format(DateTimeFormatter.java:1719) …

6
2 oklu lambda Java 8'de ne anlama geliyor?
Daha önce birkaç Java 8 öğreticisi okudum. Şu anda şu konuyla karşılaştım: Java, Currying'i destekliyor mu? Burada aşağıdaki kodu görüyorum: IntFunction<IntUnaryOperator> curriedAdd = a -> b -> a + b; System.out.println(curriedAdd.apply(1).applyAsInt(12)); Bu örneğin 2 elementi topladığını anlıyorum ama yapıyı anlayamıyorum: a -> b -> a + b; İfadenin sol kısmına …
118 java  lambda  java-8  currying 

3
PermGen ve Metaspace arasındaki fark nedir?
Java 7'ye kadar JVM belleğinde JVM'nin sınıflarını sakladığı PermGen adlı bir alan vardı . In Java 8 kaldırıldı ve denilen alanın yerini Metaspace . Ne en önemli farklılıklar PermGen ve Metaspace arasında? Bildiğim tek fark, java.lang.OutOfMemoryError: PermGen spaceartık atılamaması ve VM parametresinin MaxPermSizegöz ardı edilmesi.


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.