Pytania otagowane jako optional

Niezmienny typ, który może zawierać wartość lub odwołanie. Każda instancja tego typu albo zawiera niezerową wartość lub odwołanie, albo nic nie zawiera (w takim przypadku mówimy, że odwołanie jest „nieobecne”; nigdy nie mówi się, że „zawiera wartość null”).

14
Swift: testowanie opcji pod kątem zera
Używam Xcode 6 Beta 4. Mam dziwną sytuację, w której nie mogę dowiedzieć się, jak odpowiednio przetestować opcje. Jeśli mam opcjonalny xyz, to właściwy sposób na przetestowanie: if (xyz) // Do something lub if (xyz != nil) // Do something Dokumenty mówią, że należy to zrobić w pierwszy sposób, ale …
137 ios  swift  optional 

8
Szybki: strażnik niech vs jeśli pozwolę
Czytałem o Optionals w Swift i widziałem przykłady, w których if letjest używany do sprawdzania, czy Argument opcjonalny przechowuje wartość, a jeśli tak - zrób coś z nieopakowaną wartością. Jednak widziałem, że w Swift 2.0 słowo kluczowe guard letjest używane głównie. Zastanawiam się, czy if letzostał usunięty ze Swift 2.0, …

9
Domyślny opcjonalny parametr w funkcji Swift
Gdy ustawię wartość firstThingdomyślną, nilto zadziała, bez wartości domyślnej nilpojawia się błąd, że podczas wywoływania funkcji brakuje parametru. Wpisując Int?, myślałem, że jest to opcjonalne z domyślną wartością nil, mam rację? A jeśli tak, dlaczego nie działa bez = nil? func test(firstThing: Int? = nil) { if firstThing != nil …
109 swift  function  optional 

6
Dlaczego java.util.Optional nie można serializować, jak serializować obiekt za pomocą takich pól
Klasa Enum jest Serializable, więc nie ma problemu z serializacją obiektu za pomocą wyliczeń. W drugim przypadku klasa ma pola klasy java.util.Optional. W takim przypadku zgłaszany jest następujący wyjątek: java.io.NotSerializableException: java.util.Optional Jak sobie radzić z takimi klasami, jak je serializować? Czy można wysłać takie obiekty do zdalnego EJB lub przez …

1
Szybkie, zmienne dekoracje z „?” (znak zapytania) i „!” (wykrzyknik)
Rozumiem, że w Swift wszystkie zmienne muszą mieć przypisaną wartość i że za pomocą opcji opcjonalnych możemy ustawić zmienną, która ma być ustawiona nilpoczątkowo. Nie rozumiem, co robi ustawienie zmiennej na a !, ponieważ miałem wrażenie, że to „odpakowuje” wartość z opcjonalnej. Pomyślałem, że robiąc to, gwarantujesz, że ta zmienna …
106 swift  optional 


5
Prawidłowe użycie Optional.ifPresent ()
Próbuję zrozumieć ifPresent()metodę OptionalAPI w Javie 8. Mam prostą logikę: Optional<User> user=... user.ifPresent(doSomethingWithUser(user.get())); Ale to powoduje błąd kompilacji: ifPresent(java.util.functionError:(186, 74) java: 'void' type not allowed here) Oczywiście mogę zrobić coś takiego: if(user.isPresent()) { doSomethingWithUser(user.get()); } Ale to jest dokładnie jak zagracony nullczek. Jeśli zmienię kod na ten: user.ifPresent(new Consumer<User>() { …
99 java  lambda  java-8  optional 



5
Dlaczego funkcja findFirst () zgłasza wyjątek NullPointerException, jeśli pierwszy znaleziony element ma wartość null?
Dlaczego to rzuca java.lang.NullPointerException? List<String> strings = new ArrayList<>(); strings.add(null); strings.add("test"); String firstString = strings.stream() .findFirst() // Exception thrown here .orElse("StringWhenListIsEmpty"); //.orElse(null); // Changing the `orElse()` to avoid ambiguity Pierwsza pozycja stringsto null, co jest wartością całkowicie akceptowalną. Ponadto findFirst()zwraca parametr Optional , co ma jeszcze większy sens, findFirst()aby móc …

6
Sprawdzanie wartości opcjonalnej wartości logicznej
Kiedy chcę sprawdzić, czy opcjonalna wartość logiczna jest prawdziwa, wykonanie tego nie działa: var boolean : Bool? = false if boolean{ } Powoduje to ten błąd: Opcjonalny typ „@IvalueBool?” nie może być używany jako wartość logiczna; zamiast tego przetestuj '! = nil' Nie chcę sprawdzać, czy jest zero; Chcę sprawdzić, …

4
„Optional.get ()” bez czeku „isPresent ()”
Mam następujący kod wyszukiwania w Javie: return getTableViewController().getMe().getColumns().stream().filter($->Database.equalsColumnName($.getId(), columnId)).findFirst().get(); Chciałem znaleźć kolumnę według nazwy i zwrócić pierwszą znalezioną. Rozumiem, że jest przypadek, w którym nic nie znaleziono i należy to przetworzyć, ale jak? Czy tego właśnie chce przez to przekleństwo: 'Optional.get()' without 'isPresent()' check ? Jak naprawić? Chcę wrócić, nulljeśli …

8
Jak rozwiązać problem „Interpolacja ciągów tworzy opis debugowania dla wartości opcjonalnej; czy chciałeś wyrazić to wyraźnie? ” w Xcode 8.3 beta?
Od wersji beta 8.3 zilliony ostrzeżeń „Interpolacja łańcuchów generuje opis debugowania dla wartości opcjonalnej; czy chodziło Ci o to, aby było to jawne?” pojawił się w moim kodzie. Na przykład ostrzeżenie pojawiło się w następującej sytuacji, w której opcje mogą prowadzić do zera: let msg = "*** Error \(options["taskDescription"]): cannot …

4
Wymagane i opcjonalne argumenty przy użyciu opcji programu Boost Library
Używam biblioteki opcji programu doładowania, aby przeanalizować argumenty wiersza polecenia. Mam następujące wymagania: Po udostępnieniu „pomocy” wszystkie inne opcje są opcjonalne; Jeśli „pomoc” nie jest dostępna, wymagane są wszystkie inne opcje. Jak sobie z tym radzę? Oto mój kod, który to obsługuje i stwierdziłem, że jest on bardzo zbędny i …

12
Jak wykonać logikę na Opcjonalnym, jeśli nie jest obecny?
Chcę zamienić następujący kod za pomocą java8 Optional: public Obj getObjectFromDB() { Obj obj = dao.find(); if (obj != null) { obj.setAvailable(true); } else { logger.fatal("Object not available"); } return obj; } Poniższy pseudokod nie działa, ponieważ nie ma orElseRunmetody, ale tak czy inaczej ilustruje mój cel: public Optional<Obj> getObjectFromDB() …
83 java  java-8  optional 

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.