2017-10-19 62 views
0

多個URL我有一個字符串數組a []包含我要傳遞到我的HTTPGET代碼如下使用數組來獲取通過HTTPGET在Java中

 for (int i = 0; i < size; i++);{ 
     try (CloseableHttpClient httpclient = HttpClients.custom().setDefaultCredentialsProvider(credsProvider).build()){ 
       HttpGet httpget = new HttpGet(a[i]); 

       /*WRITE TO FILE*/ 
       /*try (CloseableHttpResponse response = httpclient.execute(new HttpGet(a[i]))){ 
        HttpEntity entity = response.getEntity(); 
        if (entity != null) { 
         try (FileOutputStream outstream = new FileOutputStream(AgentRequirements)) { 
         entity.writeTo(outstream); 
         } 
        } 
       }*/ 

       /*SHOW EXECUTION*/ 
       System.out.println("Executing request " + httpget.getRequestLine()); 
       try (CloseableHttpResponse response = httpclient.execute(httpget)) { 
        System.out.println("----------------------------------------"); 
        System.out.println(response.getStatusLine()); 
        System.out.println(EntityUtils.toString(response.getEntity())); 
       } 
      } 
    } 

幾個網址,我有一個構建失敗,因爲它說該系統找不到符號'i'。任何人都可以幫忙嗎?

回答

0

在for循環結束時刪除;,因爲如果它停留在那裏,則forloop不循環,因爲該塊已經關閉。這就是爲什麼i無法在該塊以外找到(您的嘗試抓取)。

for (int i = 0; i < size; i++);{ 
    // your code 
} 

是一樣的:

for (int i = 0; i < size; i++){} 
{ 
    // your code 
} 
0
for (int i = 0; i < size; i++); 
          ^

你有一個寬鬆的分號,打破你的for循環。

0

你的for循環沒有很好地格式化:

for (int i = 0; i < 10; i++);{ 

刪除分號 「;」

for (int i = 0; i < 10; i++){ 
0
for (int i = 0; i < size; i++); 

冗餘符號 ';'最後。它關閉「for循環」操作

1

你有什麼在這裏:

for (int i = 0; i < size; i++);{ 
... 
} 

是先用一個空語句

for (int i = 0; i < size; i++); 

跟着塊聲明(這是因爲沒事做一個循環與循環)

{ 
... 
} 

問題來自你的循環迭代,什麼都不做,一樣

for (int i = 0; i < size; i++){ 
    ; 
} 
{ 
... 
} 

只是刪除構成,將來自statemnt塊循環的;。這樣,該塊將成爲每個循環的執行塊。

for (int i = 0; i < size; i++){ 
    ... 
} 

FYI:

知道,沒有什麼阻止你隨時隨地添加塊語句的方法是很重要的。

所以,你可以有

public static void main(String[] args){ 
    { 
     int i = 0; 
     System.out.println(i); 
     { 
      int j = 0; 
      System.out.println(i); 
      System.out.println(j); 
     } 
     System.out.println(j); // ERROR - j doesn't exist here 
    } 
    System.out.println(i); // ERROR - i doesn't exist here 
} 

的想法是,i僅在該塊存在,你不能使用它的塊之外。

+0

你的答案更好。它真的解釋了爲什麼和如何。另外我喜歡你的信息片尾:) – Lino

相關問題