2012-02-18 8 views

risposta

29

Si può semplicemente fare:

if(string) 
{ 
    // String isn't null and has a length > 0 
} 
else 
{ 
    // String is null or has a 0 length 
} 

Questo funziona perché la stringa viene costretto ad un valore booleano utilizzando these rules:

String -> Booleano = "false se il valore è null o la stringa vuota (""); true altrimenti. "

+1

Nessuna idea perché questo è stato down-votato? –

+0

Anch'io: S, È importante non confrontare "" per non creare stringhe non necessarie –

+0

Questo funziona davvero. Guarda il paragrafo ** casting to boolean ** qui http://help.adobe.com/en_US/as3/learn/WS5b3ccc516d4fbf351e63e3d118a9b90204-7f9c.html#WS5b3ccc516d4fbf351e63e3d118a9b90204-7f87 – sch

3

È possibile utilizzare length ma questa è una proprietà normale non statica. Potete trovare qui tutte le proprietà della classe String. Se la lunghezza è 0, la stringa è vuota. Così si può fare i test come segue se si vuole distinguere tra una stringa null ed un vuoto uno:

if (!myString) { 
    // string is null 
} else if (!myString.length) { 
    // string is empty 
} else { 
    // string is not empty 
} 

Oppure si può utilizzare la soluzione di Richie_W se non è necessario distinguere tra stringhe vuote e nulli.

+0

Grazie, in realtà ho bisogno solo di controllare se vuoto o nullo –

2

Di seguito vi catturare tutti questi:
1. nullo
2. stringa vuota
3. spazi bianchi solo stringa

import mx.util.StringUtil; 

var str:String 

if(!StringUtil.trim(str)){ 
    ... 
} 
Problemi correlati