if / else语句基于逗号计数

时间:2016-05-30 02:33:19

标签: java if-statement

我使用此code将文本文件内容加载到GUI。 我使用String.split()方法来分割线。 现在通过计算某些行中的逗号,我想将它们设置为jComboBoxesjTextFields。我尝试使用if/else statement在下面的代码中切换jComboBoxesjTextFields的条件。 但是,当我使用if/else 2个案例,即commas<4commas<3时,我发现jComboBoxesjTextFields相互干扰。 如果commas==3jTextField1获得t1[1] 的值,除了 t1[2]

我想问一下如何针对此案例撰写if/else而不互相干扰(jComboBoxesjTextFields)?

    String[] t1 = authors.toString().split(",");

      int commas = 0;
  for(int i = 0; i < authors.toString().length(); i++) {
     if(authors.toString().charAt(i) == ',') commas++;

   if(commas<4){
     jcb1.setSelectedItem(t1[0]);

     jTextField1.setText(t1[1]);

     jTextField2.setText(t1[4]);
 }
   else if(commas<3){
     jcb1.setSelectedItem(t1[0]);

     jTextField1.setText(t1[2]);

     jTextField2.setText(t1[3]);        
 }                  
 }
      System.out.println(commas);

1 个答案:

答案 0 :(得分:0)

想想这里的逻辑,

如果我们的逗号计数等于1,则会输入第一个if,而第二个else if则不会。

尝试交换订单或使用switch语句。

此外,您将获得超出范围的异常,因为数组基于零。

 4 commas will be in tl[3]