Als «java-8» getaggte Fragen

Verwenden Sie dieses Tag für Fragen zu Java 8, Version 8 (interne Nummer 1.8) der Java-Plattform, die am 18. März 2014 veröffentlicht wurde. In den meisten Fällen sollten Sie auch das Java-Tag angeben.

6
forEach Schleife Java 8 für Karteneintragssatz
Ich versuche, alte konventionelle für jede Schleife bis Java7 in Java8 für jede Schleife für einen Karteneintragssatz zu konvertieren, aber ich erhalte eine Fehlermeldung. Hier ist der Code, den ich konvertieren möchte: for (Map.Entry<String, String> entry : map.entrySet()) { System.out.println("Key : " + entry.getKey() + " Value : " + …
82 java  lambda  java-8 

9
JDK8 - Fehler "Klassendatei für javax.interceptor.InterceptorBinding nicht gefunden" beim Versuch, Javadoc mit dem Maven-Javadoc-Plugin zu generieren
Ich verwende JDK8 (habe es in meinem Eclipse-Arbeitsbereich mit Win x64 u25 JDK + unter Linux versucht, das von Jenkins gestartet wurde - jdk-8u20-linux-x64, dasselbe Problem für beide). Ich habe ein Maven-Projekt mit mehreren Modulen (ich starte das Maven-Ziel "javadoc: aggregat" von einem Hauptmodul mit dem Verpackungstyp "pom"). Der Pom-Build-Abschnitt …

10
Java 8: Bevorzugte Methode zum Zählen von Iterationen eines Lambda?
Ich habe oft das gleiche Problem. Ich muss die Läufe eines Lambda für die Verwendung außerhalb des Lambda zählen. Z.B: myStream.stream().filter(...).forEach(item->{ ... ; runCount++); System.out.println("The lambda ran "+runCount+"times"); Das Problem ist, dass runCount endgültig sein muss, daher kann es kein int sein. Es kann keine Ganzzahl sein, da dies unveränderlich …


5
Wie verwende ich die vorzeichenlose Ganzzahl in Java 8 und Java 9?
In der Oracle „Primitive Datentypen“ Seite , erwähnt sie , dass Java 8 Unterstützung für unsigned ints und sehnt sich fügt hinzu: int: Standardmäßig ist der intDatentyp eine 32-Bit-Zweierkomplement-Ganzzahl mit Vorzeichen, die einen Minimalwert von –2 31 und einen Maximalwert von 2 31 –1 hat. In Java SE 8 und …
81 java  java-8  unsigned 



10
org.apache.tomcat.util.bcel.classfile.ClassFormatException: Ungültiges Byte-Tag im konstanten Pool: 15
Ich portiere eine Webanwendung von Tomcat 7 auf einen anderen Server mit Tomcat 7, aber mit Java 8. Tomcat startet erfolgreich, aber im Protokoll catalina.outerhalte ich: org.apache.tomcat.util.bcel.classfile.ClassFormatException: Invalid byte tag in constant pool: 15 at org.apache.tomcat.util.bcel.classfile.Constant.readConstant(Constant.java:131) at org.apache.tomcat.util.bcel.classfile.ConstantPool.<init>(ConstantPool.java:60) at org.apache.tomcat.util.bcel.classfile.ClassParser.readConstantPool(ClassParser.java:209) at org.apache.tomcat.util.bcel.classfile.ClassParser.parse(ClassParser.java:119) at org.apache.catalina.startup.ContextConfig.processAnnotationsStream(ContextConfig.java:2049) at org.apache.catalina.startup.ContextConfig.processAnnotationsJar(ContextConfig.java:1931) at org.apache.catalina.startup.ContextConfig.processAnnotationsUrl(ContextConfig.java:1899) at org.apache.catalina.startup.ContextConfig.processAnnotations(ContextConfig.java:1885) …

3
Ist das Zwischenspeichern von Methodenreferenzen in Java 8 eine gute Idee?
Bedenken Sie, ich habe Code wie den folgenden: class Foo { Y func(X x) {...} void doSomethingWithAFunc(Function<X,Y> f){...} void hotFunction(){ doSomethingWithAFunc(this::func); } } Angenommen, das hotFunctionwird sehr oft genannt. Wäre es dann ratsam, zwischenzuspeichern this::func, vielleicht so: class Foo { Function<X,Y> f = this::func; ... void hotFunction(){ doSomethingWithAFunc(f); } } …

5
Maximale Größe einer Methode in Java 7 und 8
Ich weiß, dass eine Methode mit Java nicht größer als 64 KB sein kann. Die Einschränkung verursacht Probleme mit generiertem Code aus einer JavaCC- Grammatik. Wir hatten Probleme mit Java 6 und konnten dies durch Ändern der Grammatik beheben. Wurde das Limit für Java 7 geändert oder ist es für …
80 java  java-7  java-8 

3
Java 8: Listen mit Stream-API zusammenführen
Ich habe die folgende Situation Map<Key, ListContainer> map; public class ListContainer{ List<AClass> lst; } Ich muss alle Listen lstaus den ListContainerObjekten einer MapKarte zusammenführen. public static void main(String args[]){ List<AClass> alltheObjectsAClass = map.values().stream(). // continue.... } Irgendeine Idee, wie man die Java 8-Stream-API verwendet?


3
Überprüfen Sie die Instanz im Stream
Ich habe folgenden Ausdruck: scheduleIntervalContainers.stream() .filter(sic -> ((ScheduleIntervalContainer) sic).getStartTime() != ((ScheduleIntervalContainer)sic).getEndTime()) .collect(Collectors.toList()); ... wo scheduleIntervalContainershat Elementtyp ScheduleContainer: final List<ScheduleContainer> scheduleIntervalContainers Ist es möglich, den Typ vor dem Filter zu überprüfen?



Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.