2015-11-15 2 views
0

Я пытался работать в это время, но я не могу найти решение. Код в основном представляет собой программу назначения, и когда она запускается, появляется окно, а «секретарь» вставляет имя и времени пациента. Однако, если я снова стану «Мария» на «1200» и «Джон» на «1200», система немедленно заменит Марию Джоном. Мой код выглядит следующим образом:Как сделать проверку if if в процессе обработки?

String[] names = new String[2400]; // from 0:00 until 24:00 

void setup() 
{ 
    String name = ""; 
    do 
    { 
    name = input("Name"); 
    if (name.equals("ABORT")) { 
     System.exit(0); 
    } // end the program 
    int time = int(input("Time code (e.g. 840 or 1200)")); 
    names[time] = name; 
    showAllNames(); 
    } 
    while (true); // loop never ends 

} 

void showAllNames()  // shows all the times where there is a name 
{ 
    for (int t = 0; t < 2400; t=t+1) 
    { 
    String name = names[t]; 
    if (name!=null) 
    { 
     println(t + "\t" + name); 
    } 
    } 
    println("================"); 
} 

public String input(String prompt) 
{ 
    return javax.swing.JOptionPane.showInputDialog(null, prompt); 
} 

Как мне добавить, если команда, которая проверяет, что положение является недействительным, прежде чем писать - и иначе предупредить пользователя?

+1

Как насчет проверки 'if (names [time] == null)' перед назначением ему? – Eran

+0

Как бы я это сделал? Потому что мне также нужно всплывающее окно, в котором будет задан вопрос «да/нет», следует ли изменять информацию или нет. @Eran –

ответ

0

Проверьте, если индекс null перед записью на него:

if(names[time] == null){ 
    //Add the name 
} else { 
    //If the name isn't null, perhaps go to the next index, or throw an exception 
} 

Что вы хотите делать, если имя null полностью зависит от вас.

Я хотел бы добавить несколько предложений, а также:

  • Сделайте ваши имена переменной ArrayList, таким образом, вы можете добавить любое количество имен без изменения переменной.

  • Не вызывайте свой метод showAllNames() из своего цикла, скорее позвоните ему после окончания цикла.

  • Используйте нормальные индексы вместо индекса времени, таким образом, вам не придется выполнять нулевые проверки.

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