2014-10-01 35 views
0

我想從動態web元素獲取數據,並且在一些邏輯測試之後,我想要做一些操作(取決於if和else塊的結果)。我無法弄清楚如果動態webelemnt沒有任何價值,即如果它的null或0,該怎麼辦。 在這段代碼中== >> String error = wb.getText(); ,當我們有一些錯誤的價值,然後它得到打印,但是當它沒有任何價值時,它不會打印任何東西,並且它只在第一個週期和第一個週期打印,而不會打印任何東西。如果一個動態web元素沒有任何值要分配什麼值

Code-   
     int i=1; 
     int j=1; 
     while(i==1){ 
     String error = wb.getText(); 
     if(! error.equals(null)){ 
     k0 = Integer.parseInt(error); 
     }//if for massage 
     else if(error.equals(null)){ 
      k0 =0; 
     }//else if 
     int expected =16; 
     if(expected==k0){ 
      Thread.sleep(4000); 
      System.out.println("Readable Massage = "+error +"k0 = "+k0); 
     }else{ 
      driver.navigate().refresh(); 
      new Play_Music_Using_MouseLocation().play_music_using_mouse_location(); 
      i++; 
     }//else 

     //Counting number of runs 
     System.out.println("Number of run = " + j); 
     j++; 
    }//while 

Output at the console -- 

Readable Massage = 16 k0 = 16 
Number of run = 1 

Readable Massage = 16 
Number of run = 2 

Readable Massage = 16 
Number of run = 3 

Readable Massage = 16 
Number of run = 4 

Readable Massage = 16 
Number of run = 5 

Readable Massage = 16 
Number of run = 6 

正如你可以從輸出的打印K0的值僅在第一次運行和文字後我收到錯誤的唯一價值分析之後看到的。 我在邏輯中犯了錯誤嗎?

回答

1

如果應該是如果(錯誤!= NULL)

如果你也想檢查錯誤字符串不是空比條件應該是(error.equals(空)!):

if(error!=null && !error.isEmpty()) 

注:也確保WB本身不是空

if(wb!=null) 
    {// your logic 
    } 
else 
    {// Logic when it's null 
    } 
+0

我嘗試過,但它開不工作 – 2014-10-01 14:53:14

+0

@Shantanu你是什麼意思,它不工作?這是如何檢查一個字符串(或任何其他對象)是否爲空。 – Alboz 2014-10-01 14:55:43

+0

我試過如果(!error.equals(null))以及if(!error.equals(「」))但沒有結果。你確定我們可以使用if(error!= null),因爲我試圖比較兩個字符串 – 2014-10-01 15:00:10

相關問題