|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Mar 2005
Città: A RRRRRRoma
Messaggi: 466
|
[Java]non credo di aver capito bene il return
Allora, diciamo pure che è un certa ora e che il cervello ha traslocato...
Codice:
public boolean isStringLC() { boolean result = false; char[] charedStr = this.toCharArray(); for(int i=0;i<charedStr.length;i++) result = Character.isLowerCase(charedStr[i]) && result; return result; } la mia domanda è: perchè sta maledetta funzione mi ritorna sempre il valore con cui ho inizializzato la variabile result e non il valore che essa assume dopo il ciclo for? grazie mille P.S.: ...mi sto già vergognando... ![]() P.P.S.: ...lo giuro!!
__________________
...work in progress... Ultima modifica di KNX : 20-02-2007 alle 01:40. |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Mar 2005
Città: A RRRRRRoma
Messaggi: 466
|
questa roba:
Codice:
public class mainClass { public static void main(String[] args) { String greet = "Ciao"; returnString(greet); } public static String returnString(String x){ return x; } } ![]() forse è un bug... o forse sto sognando... ![]() ![]() ![]() ![]()
__________________
...work in progress... |
![]() |
![]() |
![]() |
#3 | ||
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
Mi sembra anche abbastanza logico: il metodo isLowerCase restituisce un boolean. Al primo carattere che non è lower-case, ritorna false. Quindi result diventa false da lì in avanti. Altrimenti se tutti i caratteri sono lower-case, allora farà sempre true && true, quindi true. Tra l'altro, si potrebbe anche ottimizzare cosi: Codice:
boolean result = true; char[] charedStr = this.toCharArray(); for(int i=0; result && i<charedStr.length; i++) result = Character.isLowerCase(charedStr[i]); return result; Quote:
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) Ultima modifica di andbin : 20-02-2007 alle 08:58. |
||
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: May 2005
Città: Roma
Messaggi: 7938
|
per stampare su console devi fare in questo modo:
Codice:
System.out.print(str); Codice:
System.out.println(str); se non la conosci, è lì il problema, se hai ancora problemi facci un fischio ![]()
__________________
My gaming placement |
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Mar 2005
Città: A RRRRRRoma
Messaggi: 466
|
Si si si scusate, la logica booleana la conosco... subito dopo aver postato ieri sera ho realizzato che inizializzare result a false avrebbe portato result ad essere sempre false indipendentemete dal valore del primo pezzo della condizione se così vogliamo chiamarlo...
purtroppo, facevo mille prove e non mi accorgevo del fatto che result era inizializzato a false... stendiamo un velo pietoso su ciò che ho postato ieri sera... dimenticatevene ve ne prego ![]() soprattutto del secondo dei due post in cui pretendevo che return mi stampasse una stringa... mmmmm... diabolico... bho non so forse ero ubriaco... scusatemi ancora ![]()
__________________
...work in progress... |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 02:15.