2012-05-25 2 views
0

Это более или менее мой первый проект java. Я не могу заставить мой цикл while работать правильно. Кажется, он зацикливается столько раз, сколько целое число, которое я вводил для своей первой опции. Но я хочу, чтобы это было для моей второй. Мой учитель-компьютер совсем не очень полезен.Не работает ли петля?

import java.awt.*; 
public class Summative extends JApplet 
{ 
    int n; //first choice variable 
    int t; //time variable 
    int integer; //integer input 
    int x=0; //count variable 
    int y=50; //test 

    public void init() //Initialize method 
    { 
     setSize(1000, 800); //Set size 

     Container c = getContentPane(); 
     c.setBackground(Color.GREEN); //Set background 
    }  


    public void paint(Graphics g) 
    { 
     super.paint(g); //Start paint method 

     g.setFont(new Font("Veranda", Font.PLAIN, 20)); 
     g.setColor(Color.BLACK); 

     g.drawString("Hello", 250, 25); //top display message 

     String number = JOptionPane.showInputDialog("Would you like a custom loop count or an infinite? 1. Custom 2. Infinite"); //test choice 
     n = Integer.parseInt(number); 
     while (n<0 || n>2); 

     if (n==1); 
     { 
     } 
     do 
     { 
      String number2 = JOptionPane.showInputDialog("How many times would you like to loop?"); 
      integer = Integer.parseInt(number); 
     }while (integer<0 || integer>99999); 


     while (x < integer) 
     { 
      g.drawString("hi", 200, y); 

      x+=1; 
      y = y+40; //test 

     } 
    } 
} 

ответ

1

Я думаю, что вы имели в виду это

integer = Integer.parseInt(number); 

быть

integer = Integer.parseInt(number2); 
+0

спасибо за подсказку на запятой, помогли очистить код. И @seth благодарит за исправление, которое исправило это. Подвинчивается переменная: P – Nadim

4

Стоит отметить, что у вас есть пара паразитных с запятой в коде:

while (n<0 || n>2); 
       ^HERE 

и

if (n==1); 
     ^HERE 

Кроме того, вы фактически никогда не смотреть на number2 (второй parseInt() вызов выглядит неправильно).

Смежные вопросы