stackoverflow.com 의이 질문 에서이 아이디어를 얻었습니다.
다음과 같은 패턴이 일반적입니다.
final x = 10;//whatever constant value
for(int i = 0; i < Math.floor(Math.sqrt(x)) + 1; i++) {
//...do something
}
내가 만들려고하는 요점은 조건문이 복잡하고 변경되지 않는다는 것입니다.
루프의 초기화 섹션에서 선언하는 것이 더 낫습니까?
final x = 10;//whatever constant value
for(int i = 0, j = Math.floor(Math.sqrt(x)) + 1; i < j; i++) {
//...do something
}
이것이 더 명확합니까?
조건식이 다음과 같은 단순한 경우
final x = 10;//whatever constant value
for(int i = 0, j = n*n; i > j; j++) {
//...do something
}
x
크기가 큰 경우, Math.floor(Math.sqrt(x))+1
동일합니다 Math.floor(Math.sqrt(x))
. :-)
{ x=whatever; for (...) {...} }
.