use_is_even_rather_than_modulo — 나머지 연산보다 isEven/isOdd 사용하기

use_is_even_rather_than_modulo — 나머지 연산보다 isEven/isOdd 사용하기

정수 값에 나머지 연산자 %를 적용하고 그 결과를 0이나 1과 비교하는 코드를 보면 분석기가 이 진단을 내보내요. isEven이나 isOdd 게터를 쓰면 더 명확하고 간결해지는 상황이에요.

출처: use_is_even_rather_than_modulo

본문

Description

Dart 분석기는 정수 값에 나머지 연산자 %를 적용할 때 오른쪽 피연산자가 2인 경우, 그 결과를 ==0 또는 1과 비교하게 되면 이 진단을 만들어요. isEven이나 isOdd 게터를 쓰는 대신 말이죠.

Examples

다음 코드는 x % 2의 결과가 0과 비교되어 x가 짝수인지 확인하기 때문에 이 진단이 발생해요.

bool f(int x) => x % 2 == 0;

다음 코드는 x % 2의 결과가 1과 비교되어 x가 홀수인지 확인하기 때문에 이 진단이 발생해요.

bool f(int x) => x % 2 == 1;

Common fixes

값이 짝수인지 확인하려면 isEven 게터를 사용하세요.

bool f(int x) => x.isEven;

값이 홀수인지 확인하려면 isOdd 게터를 사용하세요.

bool f(int x) => x.isOdd;

더 알아보기