Codice che non capisco

di il
3 risposte

Codice che non capisco

Salve ragazzi sto cercando di capire un pezzo di codice ma non capisco come è stato fatto il for, non l'ho mai visto cosi, e poi non capisco bene quello che si fa in questo for, mi potreste dare qualche delucidazioni?
Vi scrivo tutto il codice del metodo perchè magari con un pezzo non si capirebbe , spero di non aver fatto un errore nello scriverlo tutto per le varie regole del forum, chiedo pietà ai moderatori se ho sbagliato eheh


public String getFormParams(String html, String username, String password)
throws UnsupportedEncodingException {

System.out.println("Extracting form's data...");

Document doc = Jsoup.parse(html);

// Google form id
Element loginform = doc.getElementById("gaia_loginform");
Elements inputElements = loginform.getElementsByTag("input");
List<String> paramList = new ArrayList<String>();
for (Element inputElement : inputElements) {
String key = inputElement.attr("name");
String value = inputElement.attr("value");

if (key.equals("Email"))
value = username;
else if (key.equals("Passwd"))
value = password;
paramList.add(key + "=" + URLEncoder.encode(value, "UTF-8"));
}

// build parameters list
StringBuilder result = new StringBuilder();
for (String param : paramList) {
if (result.length() == 0) {
result.append(param);
} else {
result.append("&" + param);
}
}
return result.toString();
}





Attendo consulta grazie ragazzi

3 Risposte

  • Re: Codice che non capisco

    Dove sta' il problema? Il codice e' a dir poco, banale.
    Anche i nomi degli oggetti sono chiarificatori.

    Se non conosci Java, ci sono fior fiore di libri che ne descrivono la sintassi e la semantica.
  • Re: Codice che non capisco

    Si ma non capisco il for scritto cosi, io l'ho sempre visto for(cont ; cont<n;con++) con una sintassi cosi, con i due punti non capisco cosa voglia dire
  • Re: Codice che non capisco

    E' un for-each. Il codice
    for (String param : paramList)
    scorre l'array di stringhe paramList, utilizzando "param" come termine generico.
    In pratica equivale a
    for(i = 0; i < length; i++){
        String param = array[i];
        ....
    }
Devi accedere o registrarti per scrivere nel forum
3 risposte