Wpis z mikrobloga

Jestem przyzwyczajona do Sonara, gdzie każdą regułę mogę dokładnie obadać, o co w niej chodzi.

Lubię wbudowaną inspekcję kodu #intellij, ale trafiłam na regułę, której ani w ząb nie rozumiem (kod działa, próbowałam o tym czytać, sprawdzać dokumentację, no i ni #!$%@? nie wiem, o co mu chodzi).

Tak więc dwa pytania:

- ważniejsze: gdzie można znaleźć opisy reguł inspekcji kodu IntelliJ?
- mniej ważne: o #!$%@? chodzi w ostrzeżeniu "'BigDecimal.divide()' called without a rounding mode argument"?

z góry dziękuję, indywidualnie dziękować będę plusami ( ͡ ͜ʖ ͡)

#programowanie #java
  • 18
@marcinkovvsky: czytałam właśnie i przy divide() nie ma takiej informacji, że jest to niezalecane - mogę prosić o jakieś źródło tej wiedzy?

bardzo ciekawe, bo na szybko dałam UNNECESSARY (i to, z tego, co widzę, jest też domyślne), i testy (które bez żadnego mode'a przechodziły) mi failują, i mówią że jednak necessary ;d
@noelo_cohelo: dokładnie tak - Javy xD
divide() ma kilka wersji - z i bez przeładowania, więc skoro Sonar zwraca Ci taki błąd pomyślałem, że wołałaś metodę bez sprecyzowanego zaokrąglenia. Wszedłem do implementacji divide() i zobaczyłem jak woła przeciążoną metodę divide() z argumentem rounding mode, który w tym przypadku jest RoundingMode.UNNECESSARY. Stamtąd poszukałem w googlu kiedy wartość jest niejednoznaczna i jakie są przykłady i wyskoczył mi link, który wkleiłem.
@noelo_cohelo: sorry, źle przeczytałem. Nie sonar tylko po prostu ostrzeżenie.

W przypadku metody divide() bez argumentów.

wartość, miałem na myśli wynik z dzielenia.

Edit: poza tym błąd typu "BigDecimal.divide()' called without a rounding mode argument" mówi coś w rodzaju - "zawołałaś metodę, która ma przeciążoną wersję z doprecyzowanym argumentem - w tym przypadku tryb zaokrąglania. W takich przypadkach zwykle wołany jest pod spodem jakiś domyślny tryb. Jesteś pewna? "

Edit2: teraz
@beethoven no kurde, dokładnie o to mi chodziło!

super, wielkie dzięki Kolego!

czy mogę od tej pory Cię wołać do wszelkich głupich javowych pytań?

bo widzę że masz umiejętność której mnie brakuje :d