2013-11-27 6 views
0

현재 저는 Java를 배우고 있으며 어떻게 작동하는지 잘 모르는 루프에 빠져 있습니다.루프 이해에 도움이 필요합니다.

코드는 다음과 같습니다

int sum = 0, maximum = number[0], minimum = number[0]; 
for (int i = 0; i < number.length; i++) { 
    sum += number[i]; 
    if (maximum < number[i]) { 
     maximum = number[i]; 
    } 
    if (minimum > number[i]) { 
     minimum = number[i]; 
    } 
} 

그래서 제 질문은 다음과 같습니다

  1. int sum = 0, maximum = number[0], minimum = number[0]은 무엇입니까? 035에서 루프 시작을 으로 만드 시나요?

  2. for 루프에서 number.length는 무엇입니까? 해야 할 것?

  3. sum + = number [i]는 무엇이며 왜 [i]가 필요합니까?

  4. 최대/최소값을 확인하는 if 루프와 동일합니다. 왜 숫자 뒤에 있습니까?

+8

"if 루프"같은 것은 없습니다. –

+1

http://www.learnjavaonline.org/ 시작하기 좋은 곳이 될 것입니다 – reto

+2

기본 자습서를 거쳐야합니다. – Maroun

답변

0

1. int sum = 0, 최대 = number [0], minimum = number [0]은 무엇을합니까? 루프가 0에서 시작하나요?

(이 라인은 다음에 오는에 대한 루프에 영향을주지 않습니다.)

이 라인은 각각 0, number[0]number[0]- sum, maximumminimum를 초기화합니다.

int sum = 0; 
int maximum = number[0]; 
int minimum = number[0]; 

2 :이 라인에 대한 속기입니다
참고. for 루프에서 number.length는 무엇을 하는가? 해야 할 것?

number.length 배열 number의 길이이고, 상기 어레이에 저장 numberint 값의 수를 말하는 것이다.

3. sum + = number [i]는 무엇을하고 왜 필요한가?

sumnumber[i]입니다.
number[i]은 int 배열 number에 저장된 i 번째 int 값입니다. 여기에서 i색인이라고합니다.

4. if/...에서 최대/최소값을 확인합니다. 왜 숫자 뒤에 있습니까?

여기서도 i은 배열의 i 번째 값을 number이라고 말하기위한 색인입니다.


(그건 그렇고, 대신 두 if 조건

maximum = Math.max(maximum, number[i]); 
minimum = Math.min(minimum, number[i]); 

을 고려하십시오.)

+0

설명 해 주셔서 감사합니다. 예, for-loop를 의미합니다. 그것을 게시하는 동안 혼란스러워했다. – user3042022

2

이 라인 :.

int sum = 0, maximum = number[0], minimum = number[0]; 

int 세 변수 (sum, maximumminimum)를 선언하고 일부 값 (0, number[0] 각각 number[0]로 초기화

number 보인다 배열 (아마 int[])이됩니다. 즉 복수형을 보유하고 있음을 나타냅니다. int 값.

number.lengthnumber의 요소 수를 반환합니다.

number[i]은 배열에서 i 위치의 요소를 반환합니다 (number[0]은 0 위치의 요소를 반환하고 첫 번째 요소는 a.k.a와 같습니다).

대부분의 혼란은 배열이 무엇인지에 대한 지식 부족 때문에 발생하는 것으로 보입니다.

초보자는 this tutorial을 참조하십시오.

+3

한 줄에 여러 변수를 선언하는 것은 좋지 않습니다. [Java 코드 규칙] (http://www.oracle.com/technetwork/java/javase/documentation/codeconventions-141270)을 참조하십시오. html # 2992) – sp00m

1

int sum = 0, 최대 = number [0], 최소 = number [0]은 무엇입니까? 루프가 0에서 시작하나요?

은 3 개 INT 변수 (합, 최대 및 최소)을 선언 + 그들 for 루프에서

를 초기화 number.length을 무엇; 해야 할 것?

그것은 합 + = 번호 [I]는 이유에서 [I]을 필요로 할 수 무엇 어레이

의 길이를 얻는다?sum = sum + number[i] +=가 선행 증가라고 :로

sum += number[i]도 쓸 수 있습니다. 그것의

동일한 번호 어레이 내의 특정 지수를 의미하므로 [i]가 필요한 최대/최소 값을 체크 루프는, 이유가 경우 [I] 번호 뒤에?

i의 번호가 numbers 배열에 저장되어 있기 때문에.

0

루프는 for-loop입니다. if는 조건문입니다.

int sum = 0, maximum = number[0], minimum = number[0]; 

이렇게하면 합계, 최대 값 및 최소값의 3 가지 int 변수가 만들어지고 초기화됩니다.

number.length는이 루프의 끝 조건 중 일부입니다. 만큼 < number.length 해당하는 난이 looop가

실행되는 바와

번호 []이 숫자 값을 추가

sum+=number[i] 

배열 인 [I]는 가 [I]는 합하는 - 배열의 셀 i는 새로운 번호마다 루프 얻는다 :

int i = 0; i < number.length; i++ 

지금은 0으로 시작하고, 1만큼 증가하고 이는 긴 내가 number.length 미만으로, 수행된다.

정도로 number[i]은 루프의 첫번째 반복에서 number[0] 것 다음 번호 [1] 다음 번호 [2] 등

0

을 당신이 "루프"를 의미 같아요. for 루프의 구문부터 시작해 보겠습니다.

for (int i = 0; i < number.length; i++) { 
    your code here.... 
} 

은 "int i=0"부분은 해당 경우 루프에 존재하는 것을 의미하는 "팬텀"정수 변수를 선언; 루프가 끝나면 컴파일러는 그 변수를 "버린다". i의 초기 값은 0입니다.

다음은 부품이 ;i < number.length;입니다. 이 부분은 "배열 번호의 길이에 도달 할 때까지 루프를 실행합니다.

마지막으로"i++ "은 단계 길이를 정의하고 각 실행 후에 얼마나 커야 할지를 결정합니다.이 경우 i ++는 i = i + 1을 의미합니다. . 요약

그래서는. 루프 다음이 카운터를 증가거야 얼마나 마지막으로 카운터는 반복을 실행하려면 얼마나 큰위한 결정하고, 카운터의 초기화로 시작 귀하의. I가 가지고

이것들은 기본적인 것들 중 하나이며, 책이나 가이드는 여러분이 시작하기에 아주 좋을 것입니다. 그렇지 않으면 다음과 같이해야합니다 :

관련 문제