mirror of
https://gitflic.ru/project/openide/openide.git
synced 2025-12-16 22:51:17 +07:00
22 lines
852 B
HTML
22 lines
852 B
HTML
<html>
|
|
<body>
|
|
Reports loops whose second and all subsequent iterations do not produce any additional side effects other
|
|
than the one produced by the first iteration, which can indicate a programming error.
|
|
<p>Such loops may iterate only zero, one, or infinite number of times.
|
|
If the infinite number of times case is unreachable, such a loop can be replaced with an <code>if</code> statement.
|
|
Otherwise, there's a possibility that the program can get stuck.</p>
|
|
<p>Example:</p>
|
|
<pre><code>
|
|
public void foo(String baseName, String names) {
|
|
int suffix = 1;
|
|
String name = baseName;
|
|
while (names.contains(name)) {
|
|
// error: suffix is not updated making loop body idempotent
|
|
name = baseName + suffix;
|
|
}
|
|
}
|
|
</code></pre>
|
|
<!-- tooltip end -->
|
|
<p><small>New in 2018.1</small></p>
|
|
</body>
|
|
</html> |