import java.util.*;
public class Zhangbubble
{
public static void main (String[] args)
{
int Bub[] = new int[6];
Random randy = new Random();
boolean Done = false;
for (int x=0; x<6; x++)
{
Bub[x] = randy.nextInt(100);
System.out.println (Bub[x]);
}
System.out.println ("This is the original array");
while (! Done)
{
Done = true;
for (int x = 0; x<Bub.length-1; x++)
{
if(Bub[x+1] > Bub[x])
{
int temp = Bub[x];
Bub[x] = Bub[x+1];
temp = Bub[x+1];
Done = false;
}
else
{
Done = false;
}
}
for(int x = 0; x<6; x++)
{
System.out.print(Bub[x]+" ");
}
}
}
}
제 프로그래밍 선생님이 부울을 사용하여 Java에서 버블 정렬을 요청했습니다. 그의 예제는 for 루프를 사용하여 while 루프의 코드를 보여줍니다. 이 코드는 배열의 숫자가 최소에서 최대까지 정렬 될 때까지 계속 정렬한다고 가정합니다. 그러나, 나는 정말로 길을 잃는다. 그리고 나는 내가 잘못 가고있는 곳을 이해할 수 없다. 어떤 도움이라도 대단히 감사하겠습니다!Java에서 boolean을 사용하는 버블 팝입니다.
작업하는 것은, 당신은 당신의 코드에서 자바 규칙을 따라야 할 수 있습니다 - 변수 이름의 첫 글자-낮은 맡았다입니다 , 후속 단어의 첫 글자 만 대문자로 시작합니다. testGears - http://docs.oracle.com/javase/tutorial/java/nutsandbolts/variables.html#naming을 참조하십시오. 당신의 거품을 복수화하고 좀 더 기술적 인 이름을주고 싶을 수도 있습니다. 도움을 얻으려는 사람들에게 가독성을 높이는 데 도움이 될뿐만 아니라 도로를 몇 달간 자신있게 생각할 수도 있습니다. –
디버거를 사용하여 코드를 단계별로 실행하거나 변수 값이있는 빈번한 인쇄 문을 삽입 해 보았습니까? 스택 오버플로 (Stack Overflow)에서 대답을 얻으려고 그 이상을 배울 것이라고 생각합니다. –
디버거를 사용해 보셨습니까? 코드에 몇 가지 중단 점을 설정하고 단계별로 실행하여 실제로 수행 할 작업을 확인하십시오. 나에게 오래 동안 보지 않고, 마치 마치 if와 else 모두에서 false로 설정되었으므로 결코 완료되지 않습니다. –