«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.

7
Akışları kullanarak harita oluştururken kopyaları yoksay
Map<String, String> phoneBook = people.stream() .collect(toMap(Person::getName, Person::getAddress)); java.lang.IllegalStateException: Duplicate keyÇoğaltılmış bir eleman bulunduğunda anlıyorum . Haritaya değer ekleme konusundaki bu istisnayı göz ardı etmek mümkün müdür? Yinelenen varsa, yinelenen anahtarı yok sayarak devam etmelidir.
257 java  java-8  java-stream 

4
Instant ve LocalDateTime arasındaki fark nedir?
Bunu biliyorum: Instant , bilgi işlem için bir "teknik" zaman damgası temsilidir (nanosaniye). LocalDateTime , insanlar için saat dilimlerini içeren tarih / saat temsilidir. Yine de, IMO'nun çoğu, uygulama kullanım durumlarının çoğu için tür olarak alınabilir. Örneğin: Şu anda tarihlere göre bir sonraki çalıştırmayı hesaplamam gereken bir toplu iş çalıştırıyorum …
256 java  datetime  java-8 

13
Java 8'de iki tarih arasındaki günleri hesaplama
Ben SO hakkında nasıl soruları bir sürü olduğunu biliyorum, ama ben istiyorum ve yeni Java 8 Tarih api kullanarak örnek. JodaTime kütüphanesini de biliyorum, ama harici kütüphaneler olmadan bir çalışma yolu istiyorum. Fonksiyonun bu kısıtlamalardan şikayet etmesi gerekir: Tarihten itibaren hataları önleme Girdi iki Date nesneleridir (zaman olmadan, localdatetime biliyorum, …

12
Java 8 JDK'yi Mac'den Kaldırma
Bu yüzden, bazı örneklere bakmak için bir süre önce JDK 8'in beta sürümünü yükledim. Şimdiye kadar düşündüm, sürümler arasında geçiş yapmak kolay. IntelliJ ile biraz Play geliştirme yapmak. Bazı nedenlerden ötürü IntelliJ, 8 ile derliyor: 1.6 kullanmak için Tercihler'de derleyiciyi ayarladım Sözde harici derleme yoluyla SBT kullanıyor, ancak komut satırından …

4
Java'da açıkça varsayılan bir yöntemi çağırma
Java 8, mevcut uygulamaları değiştirmeye gerek kalmadan arabirimleri genişletme yeteneği sağlamak için varsayılan yöntemler sunar. Bu yöntem geçersiz kılındığında veya farklı arabirimlerdeki çakışan varsayılan uygulamalar nedeniyle kullanılabilir olmadığında, bir yöntemin varsayılan uygulanmasını açıkça çağırmanın mümkün olup olmadığını merak ediyorum. interface A { default void foo() { System.out.println("A.foo"); } } class …

3
Yinelenebilir <T> neden stream () ve parallelStream () yöntemleri sağlamaz?
IterableArayüzün neden stream()ve parallelStream()yöntemleri sağlamadığını merak ediyorum . Aşağıdaki sınıfı düşünün: public class Hand implements Iterable&lt;Card&gt; { private final List&lt;Card&gt; list = new ArrayList&lt;&gt;(); private final int capacity; //... @Override public Iterator&lt;Card&gt; iterator() { return list.iterator(); } } Bir Trading Kart Oyunu oynarken elinizde kartlar olabileceği için bir El uygulamasıdır …

3
Java 8 lambdas, Function.identity () veya t-> t
Daha fazla bilgi Yığın Taşması : Java 8, Java - Function.identity () или t-&gt; t? Function.identity()Yöntemin kullanımı ile ilgili bir sorum var . Aşağıdaki kodu düşünün: Arrays.asList("a", "b", "c") .stream() .map(Function.identity()) // &lt;- This, .map(str -&gt; str) // &lt;- is the same as this. .collect(Collectors.toMap( Function.identity(), // &lt;-- And this, …

12
Stream :: flatMap ile İsteğe Bağlı Java 8'leri Kullanma
Yeni Java 8 akış çerçevesi ve arkadaşları bazı çok özlü java kodu için yapmak, ama kısaca yapmak zor görünen basit bir durumla karşılaştım. A List&lt;Thing&gt; thingsve yöntemini düşünün Optional&lt;Other&gt; resolve(Thing thing). Ben Things ile eşlemek Optional&lt;Other&gt;ve ilk almak istiyorum Other. Açık çözüm kullanmak olacaktır things.stream().flatMap(this::resolve).findFirst(), ancak flatMapbir akış döndürmenizi gerektirir …

5
Java Akışları neden bir defaya mahsus?
IEnumerableBir yürütme hattının istediğimiz kadar çok yürütülebildiği C # 'ların aksine , Java'da bir akış yalnızca bir kez' yinelenebilir '. Herhangi bir terminal işlemine yapılan çağrı akışı kapatır ve kullanılamaz hale getirir. Bu 'özellik' çok fazla güç tüketir. Bunun nedeninin teknik olmadığını hayal ediyorum . Bu garip kısıtlamanın arkasındaki tasarım …

4
Java 8 Akışları: karmaşık koşullara karşı çoklu filtreler
Bazen bir filtreyi Streambirden fazla koşulla filtrelemek istersiniz : myList.stream().filter(x -&gt; x.size() &gt; 10).filter(x -&gt; x.isCool()) ... ya da karmaşık bir durum ve tek bir durumla aynı şeyi yapabilirsiniz filter: myList.stream().filter(x -&gt; x.size() &gt; 10 &amp;&amp; x -&gt; x.isCool()) ... Tahminimce ikinci yaklaşım daha iyi performans özelliklerine sahip, ama bunu …

4
Neden Optional.of yerine Optional.ofNullable kullanıyorsunuz?
Java 8 Optionalsınıfını kullanırken, bir değerin isteğe bağlı olarak sarılabilmesinin iki yolu vardır. String foobar = &lt;value or null&gt;; Optional.of(foobar); // May throw NullPointerException Optional.ofNullable(foobar); // Safe from NullPointerException Anlamanın Optional.ofNullabletek güvenli yolu olduğunu anlıyorum Optional, ama neden hiç Optional.ofvar? Neden her zaman sadece Optional.ofNullable güvenli tarafta olmak değil ?

19
Java Akışını 1 ve yalnızca 1 öğeye filtreleme
Bir Streamöğeleri bulmak için Java 8 s kullanmaya çalışıyorum LinkedList. Bununla birlikte, filtre kriterlerine bir ve tek bir eşleşme olduğunu garanti etmek istiyorum. Bu kodu al: public static void main(String[] args) { LinkedList&lt;User&gt; users = new LinkedList&lt;&gt;(); users.add(new User(1, "User1")); users.add(new User(2, "User2")); users.add(new User(3, "User3")); User match = users.stream().filter((user) …

6
JDK 8'de PermGen eliminasyonu
JDK 8'i yükledim ve Eclipse'i çalıştırmaya çalıştım. Aşağıdaki uyarı mesajını alıyorum: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=512m; support was removed in 8.0 Bu VM seçeneğini göz ardı etmenin nedenleri nelerdir?
229 java  java-8  jvm  permgen 

7
Anında Dizeye Biçimlendirme
Anında yeni java 8 time-api ve bir desen kullanarak bir dize biçimlendirmek çalışıyorum: Instant instant = ...; String out = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss").format(instant); Yukarıdaki kodu kullanarak, desteklenmeyen bir alan şikayet bir istisna alıyorum: java.time.temporal.UnsupportedTemporalTypeException: Unsupported field: YearOfEra at java.time.Instant.getLong(Instant.java:608) at java.time.format.DateTimePrintContext.getValue(DateTimePrintContext.java:298) ...

23
JDK8 ile WebService İstemcisi Oluşturma Hatası
Projemde bir web hizmeti kullanmam gerekiyor. NetBeans kullanıyorum, bu yüzden projeme sağ tıkladım ve yeni bir "Web Service Client" eklemeye çalıştım. En son kontrol ettiğimde, bu bir web hizmeti istemcisi oluşturmanın yoluydu. Ancak bir AssertionError hatasıyla sonuçlandı: java.lang.AssertionError: org.xml.sax.SAXParseException; systemId: jar: dosya: /path/to/glassfish/modules/jaxb-osgi.jar! /com/sun/tools/xjc/reader/xmlschema/bindinfo/binding.xsd; lineNumber: 52; columnNumber: 88; schema_reference: accessExternalSchema …

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.