2016-10-27 1 views
-1

할일이 있어야합니다. 버튼에 코드를 쓰면됩니다. 버튼을 클릭하면 1-10 사이의 2 개의 임의 숫자가 하나의 메시지에 나타나고 이 코드난수 = 같은 수의 숫자

Random r=new Random(); 
String total = ""; 
for (int z=0;z<5;z=z+1) { 
    int x=r.nextInt(10); 
    total = total+x+"\n"; 
} 
JOptionPane.showMessageDialog(null,total); 

메시지가 난 각각의 난수의 앞에 별을 둘 필요가 나타날 때 내 문제는 지금을 썼다. 예를 들면 : 내가 버튼을 클릭 , 메시지가 5 개 난수 내가 별이 너무

5 ***** 
2 ** 
3 *** 
4 **** 
8 ******** 

처럼 각각의 임의의 숫자와 동일 넣어 코드를 작성해야

5 
2 
3 
4 
8 

처럼 등장 등장입니다 이런 일이 일어날 수있는 간단한 코드가 있습니까?

p.s : 저는 자바 초보자입니다. 그래서 나는 그것을 이해할 수 있도록 간단한 코드가 필요합니다. 도와 주셔서 감사합니다 :)

+0

첫 번째 코드 블록은 별과의 출력과 어떤 관련이 있습니까? 너 뭐 해봤 니? –

+0

https://docs.oracle.com/javase/7/docs/api/java/util/Formatter.html을보십시오 –

+0

글쎄, 첫 번째 코드가 잘못 되었다면 다른 코드로 대체 할 수 있습니다 .. 모두 i 버튼을 클릭 할 때 앞의 시작과 함께 5 개의 난수가 표시됩니다. –

답변

0

이 경우 10 *의 값을 가진 변수를 만들 수 있습니다. 그런 다음 임의의 숫자를 가져올 때마다 부분 문자열 (0, [난수])을 사용할 수 있습니다. 인쇄를 위해.

이 코드는 실행하지 않았지만 원하는 작업을 수행해야합니다.

Random r=new Random(); 

String stars = "**********"; 
String total = ""; 
for (int z=0;z<5;z=z+1) { 
    int x=1+r.nextInt(9); 
    total = total+x+stars.substring(0, x)"\n"; 
} 
JOptionPane.showMessageDialog(null,total); 

방금 ​​루프를 사용하려는 경우. 나는 이것이 코드라고 믿습니다 :

Random r=new Random(); 

String stars = ""; 
String total = ""; 
for (int z=0;z<5;z=z+1) { 
    stars = ""; 
    int x=1+r.nextInt(9); 
    for(int i=0; i<x; i++) 
    { 
     stars = stars + "*"; 
    } 
    total = total+x+stars"\n"; 
} 
JOptionPane.showMessageDialog(null,total); 
+0

음, 그래 완벽하게 작동합니다 : D –

+0

@KarimWagdy 그 코드는 x에 대해 0의 값을 한 번씩 생성 할 것이고 이것은 여러분이 질문에 지정한 것과 일치하지 않을 것입니다. –

+0

그것은 나를 위해 완벽하게 작동하지만 나는 여전히 자바에서 초급입니다. 그래서 정말로 정확히 부분 문자열이 무엇인지 이해하지 못합니다. 이제는 변수가 있습니다. else 문과 루프가 있다면, 다른 코드가 있습니다. 하위 문자열을 사용하지 않고? .. 예를 들어 두 개의 루프 만 함께 추가 되었습니까? –