Właśnie odkryłem nowe możliwości strumienia Java 8. Pochodząc z Pythona, zastanawiałem się, czy istnieje teraz dobry sposób na wykonywanie operacji na tablicach, takich jak sumowanie, mnożenie dwóch tablic w sposób „pythonowy” w jednej
Właśnie odkryłem nowe możliwości strumienia Java 8. Pochodząc z Pythona, zastanawiałem się, czy istnieje teraz dobry sposób na wykonywanie operacji na tablicach, takich jak sumowanie, mnożenie dwóch tablic w sposób „pythonowy” w jednej
Za każdym razem, gdy wspominam powolne działanie standardowych bibliotek i +++ C ++, spotykam się z falą niedowierzania. Mam jednak wyniki profilowania pokazujące dużą ilość czasu spędzonego na kodzie biblioteki iostream (pełne optymalizacje kompilatora), a przełączanie z iostreams na interfejsy...
Mam listę, w myListToParsektórej chcę filtrować elementy, zastosować metodę do każdego elementu i dodać wynik do innej listy myFinalList. W Javie 8 zauważyłem, że mogę to zrobić na 2 różne sposoby. Chciałbym poznać bardziej skuteczny sposób między nimi i zrozumieć, dlaczego jeden sposób jest...
Czy istnieje sposób użycia FileOutputStream w taki sposób, że jeśli plik (nazwa pliku String) nie istnieje, to go utworzy? FileOutputStream oFile = new FileOutputStream("score.txt",
Czy istnieje operacja strumienia Java 8, która ogranicza (potencjalnie nieskończony), Streamdopóki pierwszy element nie dopasuje predykatu? W Javie 9 możemy użyć takeWhilejak w poniższym przykładzie, aby wydrukować wszystkie liczby mniejsze niż 10. IntStream .iterate(1, n -> n + 1)...
Rozumiem, że strumień jest reprezentacją sekwencji bajtów. Każdy strumień zapewnia środki do odczytu i zapisu bajtów do danego magazynu kopii zapasowych. Ale jaki jest sens strumienia? Dlaczego sam sklep z podkładami nie wchodzi w interakcje? Z jakiegokolwiek powodu ta koncepcja po prostu mnie...
Bawię się leniwymi operacyjnymi funkcjami w Javie SE 8 i chcę mapindeksować ido pary / krotki (i, value[i]), a następnie filterbazować na drugim value[i]elemencie, a na koniec wyprowadzać tylko indeksy. Czy nadal muszę cierpieć z tego powodu: Jaki jest odpowiednik pary C ++ <L, R> w Javie? w...
Pracuję nad programem, który będzie przetwarzał pliki o rozmiarze potencjalnie 100 GB lub większym. Pliki zawierają zestawy rekordów o zmiennej długości. Mam pierwszą implementację uruchomioną i teraz dążę do poprawy wydajności, szczególnie w zakresie wydajniejszego wykonywania operacji we / wy,...
Używam java lambda do sortowania listy. jak mogę to posortować w odwrotny sposób? Widziałem ten post , ale chcę użyć java 8 lambda. Oto mój kod (użyłem * -1) jako hack Arrays.asList(files).stream() .filter(file -> isNameLikeBaseLine(file, baseLineFile.getName())) .sorted(new...
W Javie 8 istnieje Stream.collectmożliwość agregacji zbiorów. W Kotlinie nie istnieje to w ten sam sposób, poza tym, że może być zbiorem funkcji rozszerzenia w stdlib. Ale nie jest jasne, jakie są odpowiedniki dla różnych przypadków użycia. Na przykład na górze JavaDocCollectors znajdują się...
Jak dołączyć tekst do pliku tekstowego w C ++? I utwórz nowy plik tekstowy, jeśli jeszcze nie istnieje, i dodaj do niego tekst, jeśli
Mam kolekcję BigDecimals (w tym przykładzie a LinkedList), którą chciałbym dodać. Czy można do tego wykorzystać strumienie? Zauważyłem, że Streamklasa ma kilka metod Stream::mapToInt Stream::mapToDouble Stream::mapToLong Z których każdy ma wygodną sum()metodę. Ale, jak wiemy, floati...
Używam biblioteki ya-csv , która oczekuje pliku lub strumienia jako danych wejściowych, ale mam ciąg. Jak przekonwertować ten ciąg na strumień w
Jeśli chcesz zresetować strumień do początku (np. MemoryStream), Jest to najlepsza praktyka stream.Seek(0, SeekOrigin.Begin); lub stream.Position = 0; Widziałem, że oba działają dobrze, ale zastanawiałem się, czy jeden jest bardziej poprawny niż
Nigdy nie pamiętam, jak to robię, ponieważ tak rzadko mi się to zdarza. Ale w C lub C ++, jaki jest najlepszy sposób na odczytanie znaku ze standardowego wejścia bez czekania na znak nowej linii (naciśnij enter). Idealnie byłoby również, gdyby nie powodował echa wprowadzanego znaku na ekranie....
Próbowałem załadować plik do aplikacji internetowej i otrzymałem FileNotFoundwyjątek, gdy użyłem FileInputStream. Jednak korzystając z tej samej ścieżki, udało mi się załadować plik, gdy to zrobiłem getResourceAsStream(). Jaka jest różnica między tymi dwiema metodami i dlaczego jedna działa, a...
Załóżmy, że mam klasę i metodę class A { void foo() throws Exception() { ... } } Teraz chciałbym wywołać foo dla każdej instancji Adostarczonej przez strumień: void bar() throws Exception { Stream<A> as = ... as.forEach(a -> a.foo()); } Pytanie: Jak prawidłowo obsłużyć wyjątek?...
Mogę dodać strumienie lub dodatkowe elementy, na przykład: Stream stream = Stream.concat(stream1, Stream.concat(stream2, Stream.of(element)); I mogę dodawać nowe rzeczy na bieżąco, na przykład: Stream stream = Stream.concat( Stream.concat( stream1.filter(x -> x!=0), stream2) .filter(x...
Wysyłam strumień do metod do pisania, aw tych metodach używam binarnego czytnika / wrtier. Kiedy czytelnik / piszący zostanie usunięty, przez usinglub tylko wtedy, gdy nie ma do niego odniesienia, czy strumień również jest zamknięty? Chciałbym wysłać BinaryReader / Writer, ale używam też...
Jaki jest prawidłowy sposób obsługi błędów w strumieniach? Wiem już, że istnieje zdarzenie „błąd”, którego można słuchać, ale chcę poznać więcej szczegółów na temat dowolnie skomplikowanych sytuacji. Na początek, co robisz, gdy chcesz zrobić prosty łańcuch...