2012-10-17 12 views
15

Czy istnieje wbudowana funkcja w języku Java, która przekształci liczbę ujemną na 0? co chcę zrobić, to odjąć liczbę od zmiennej i upewnić się, że nie spada ona poniżej 0. Czy to jest możliwe z wbudowanymi funkcjami, czy też musiałbym napisać własną?Funkcja java, która zmienia liczbę ujemną na 0

+7

Wykorzystanie 'Math.max (0, yourVar)' (nie mogę przyzwoicie zarabiać odpowiedź od tego ...) –

+1

@dystroy Możesz pisać to jako odpowiedź, tak, że PO może go zaakceptować. –

+2

@RohitJain Nie jestem pewien, czy to powinna być moja najbardziej upragniona odpowiedź dnia ... –

Odpowiedz

55

Należy użyć:

Math.max(0, yourVar) 

Nie trzeba wbudowaną funkcję do tego.

+0

oh, duh! użyłem min wcześniej, ale nigdy nie myślałem o max! dzięki! – LordZardeck

3

Nie potrzebujesz żadnej funkcji, aby zamienić ujemny na zero. Możesz użyć warunkowej deklaracji zmiennej i zamienić ujemną wartość na zero.

W deklaracji warunkowej przed znakiem zapytania występuje warunek. Jeśli warunek zostanie zwrócony do wartości true, pierwsza wartość za znakiem zapytania zostanie przypisana do zmiennej.

Jeśli warunek zostanie uznany za fałszywy, wartość, która idzie za kolumną, zostanie przypisana do zmiennej. W poniższym przypadku a zostanie przypisana wartość sama w sobie, jeśli nie będzie mieć wartości poniżej zera.

int a = -1; 
a = a < 0? 0 : a; 
Powiązane problemy