Modulus One Always Equals Zero

ID

java.modulus_one_always_zero

Severity

info

Remediation Complexity

trivial

Remediation Risk

low

Remediation Effort

low

Resource

Reliability

Language

Java

Tags

reliability, suspicious-comparison

Description

Reports expressions of the form x % 1 which always evaluate to zero.

Rationale

The modulus of any integer divided by 1 is always 0 by definition. This is almost certainly a logic error where a different divisor was intended (e.g., x % 10 or x % 2).

// Bad - always evaluates to 0
int r = x % 1;

Remediation

Use the intended modulus divisor.

// Good - meaningful modulus
int r = x % 10;