По определению,
"Магическое число" - это значение, которому должно быть присвоено символическое имя, но вместо этого оно вставлено в код в виде литерала, обычно в нескольких местах.
Это прекрасный пример магического числа
for(int i = 0; i < 4; i++){ // Noncompliant, 4 is a magic number
...
, и его следует заменить на что-то значимое, например
for(int i = 0; i < NUMBER_OF_CYCLES ; i++){
...
Но Sonar также выдает ошибки для indexNumbers.Например, у меня есть класс DAO, в котором оператор вставки содержит почти 50+ столбцов, и ошибка генерации сонара для
ps.setString(1 ,...)
Я уверен, что это более читабельно, чем
ps.setString(INDEX_ONE ,...)
Есть что-нибудьнеправильно в моем понимании?или это ошибка в сонаре?