Ich habe kürzlich darüber gelesen und Leute gesehen, die diese Klasse verwenden, aber in fast allen Fällen nullhätte die Verwendung auch funktioniert - wenn nicht intuitiver. Kann jemand ein konkretes Beispiel geben, wo Optionaletwas erreicht werden nullkönnte, das nicht oder viel sauberer wäre? Das einzige, woran ich denken kann, ist, …
Gibt es einen Grund dafür? Lists.transform() aber nein Lists.filter() ? Wie filtere ich eine Liste richtig? ich könnte benutzen new ArrayList(Collection2.filter()) Natürlich, aber auf diese Weise kann nicht garantiert werden, dass meine Bestellung gleich bleibt, wenn ich das richtig verstehe.
Ich möchte Folgendes tun: List<Integer> list = IntStream.range(0, 7).collect(Collectors.toList()); aber in einer Weise, dass die resultierende Liste eine Implementierung von Guava ist ImmutableList. Ich weiß, ich könnte es tun List<Integer> list = IntStream.range(0, 7).collect(Collectors.toList()); List<Integer> immutableList = ImmutableList.copyOf(list); aber ich möchte es direkt sammeln. ich habe es versucht List<Integer> list …
Stellen Sie sich vor, ich habe eine Liste bestimmter Objekte: List<Student> Und ich muss eine andere Liste erstellen, einschließlich der idsvon Studentsin der obigen Liste: List<Integer> Ist es möglich, eine Schleife zu vermeiden, indem Apache-Sammlungen oder Guaven verwendet werden ? Welche Methoden sollten für meinen Fall nützlich sein?
Kontext Ich schreibe einen einfachen JUnit- Test für die MyObjectKlasse. A MyObjectkann aus einer statischen Factory - Methode erstellt werden , die ein varargs Takes String . MyObject.ofComponents("Uno", "Dos", "Tres"); Während des Bestehens von MyObjectkönnen Clients jederzeit die Parameter überprüfen, mit denen sie in Form einer Liste <E> über die …
Wenn ich implementation 'com.google.firebase:firebase-inappmessaging-display:17.2.0'in meinem verwende app/build.gradle, erhalte ich folgende Fehlermeldung: Duplicate class com.google.common.util.concurrent.ListenableFuture found in modules guava-20.0.jar (com.google.guava:guava:20.0) and listenablefuture-1.0.jar (com.google.guava:listenablefuture:1.0) Go to the documentation to learn how to Fix dependency resolution errors. Was ich auch in meinem habe, app/build.gradleist Folgendes: implementation 'com.google.android.gms:play-services-base:16.1.0' implementation 'com.google.android.gms:play-services-analytics:16.0.8' implementation 'com.google.android.gms:play-services-awareness:16.0.0' implementation 'com.google.android.gms:play-services-cast:16.2.0' …
Was ist die beste Konstruktion zum Erstellen eines ListStrings? Ist es Lists.newArrayList()(von Guave) oder new ArrayList()? ist es nur eine persönliche Präferenz? oder ist es nur Typ generische Typinferenz? oder gibt es einen theoretischen oder praktischen Wert bei der Verwendung von Lists.newArrayList ()?
Ich möchte Zeichenfolgenwerte meiner Felder abrufen (sie können vom Typ einer langen Zeichenfolge oder eines beliebigen Objekts sein). Wenn ein Feld null ist, sollte es eine leere Zeichenfolge zurückgeben. Ich habe dies mit Guave gemacht. nullToEmpty(String.valueOf(gearBox)) nullToEmpty(String.valueOf(id)) ... Dies gibt jedoch null zurück, wenn das Getriebe null ist! Keine leere …
Sehr sich wiederholender Code ist im Allgemeinen eine schlechte Sache, und es gibt Entwurfsmuster, die helfen können, dies zu minimieren. Manchmal ist es jedoch aufgrund der Einschränkungen der Sprache selbst einfach unvermeidlich. Nehmen Sie das folgende Beispiel aus java.util.Arrays: /** * Assigns the specified long value to each element of …
Ich bin ziemlich neu in Guava (seien wir ehrlich, ich bin nicht "ziemlich neu", ich bin ein absoluter Neuling in diesem Bereich) und habe mich daher entschlossen, einige Dokumentationen durchzugehen und war beim Lesen ziemlich erstaunt: com.google.common.base.Preconditions.checkNotNull(...) Ich verstehe den Sinn dieser Methode nicht. Dies bedeutet, dass anstatt zu tun: …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.