operator warunkowy ?:
Ostatnio zmodyfikowano 2015-05-02 09:45
uhc Temat założony przez niniejszego użytkownika |
operator warunkowy ?: » 2015-04-28 12:38:39 Mam problem ze wspomnianym operatorem. Użycie go to warunek ? prawda : fałsz Czy jest możliwość pominięcia fałszu(pytam, gdyż w pewnej pętli for warunek else jest niepotrzebny, a wręcz nie pozwala na właściwą pracę programu. |
|
Monika90 |
» 2015-04-28 12:44:25 Nie można pominąć gałęzi dla fałszywego przypadku. Ale można zwrócić element neutralny, np. 0 albo 1, "", false, true, itp., zależnie od okoliczności. co konkretnie chcesz zrobić? |
|
uhc Temat założony przez niniejszego użytkownika |
» 2015-04-28 12:55:58 Prosty program rozróżniający liczby pierwsze. W jednej z zagnieżdżonych pętli każda wartość w miejscu fałsz powoduje wyświetlanie prawdy(możliwe że koliduje z pętlą w której się znajduje), czyli liczby pierwszej. Gdy używam w tym miejscu konstrukcji if(bez else) nie ma problemu. |
|
DejaVu |
» 2015-04-28 18:56:56 Można też opcjonalnie napisać: wynik = jakis_warunek ? nowa_wartosc: wynik;
|
|
pekfos |
» 2015-04-28 20:16:37 Czy jest możliwość pominięcia fałszu(pytam, gdyż w pewnej pętli for warunek else jest niepotrzebny, a wręcz nie pozwala na właściwą pracę programu. |
Możesz pominąć wartość przez wstawienie tam throw, ale gdzie w tym logika? Jak nie potrzebujesz else, to praktycznie sam sobie odpowiedziałeś - użyj zwykłego if. Podaj przykład, gdzie musisz mieć tylko jedną wartość i, z jakiegoś powodu, akurat musisz zrobić to warunkiem ?:. |
|
uhc Temat założony przez niniejszego użytkownika |
» 2015-05-02 08:53:58 Akurat teraz nie jest to aż tak ważne, jednak może być przydatne w większych programach, gdzie potrzebna jest jak największa wydajność |
|
Quirinnos |
» 2015-05-02 09:45:18 Ten operator nie zapewnia większej wydajności. Jest to skrócony zapis if-elsa. Jeśli w warunku korzystasz tylko z if'a, nie ma sensu na siłę upychać tego skróconego. |
|
« 1 » |