2011-12-28 13 views

risposta

36

java.lang non contiene una classe denominata StringUtils. Diverse librerie di terze parti, come ad esempio Apache Commons Lang o Spring framework. Assicurati di avere il jar pertinente nel classpath del progetto e di importare la classe corretta.

+0

quale di queste dovrebbe essere utilizzato? Ho le opzioni di apache (sia assi che soap), spring e ibm. Sono quattro scelte! – Xonatron

+2

@MatthewDoucette Ebbene, quale metodo di utilità avete bisogno? Le classi StringUtils in quei progetti sono lontane dall'identico. Se hai bisogno di qualcosa di comune che è fornito da molte classi che hai già nel tuo progetto, probabilmente non importa molto. Leggi i rispettivi Javadoc e scegli quello che si adatta alle tue esigenze. – Jonik

5

StringUtils è una classe di utilità da Apache commons-lang (molte librerie ce l'hanno ma questa è la libreria più comune). È necessario scaricare il jar e aggiungerlo al classpath delle applicazioni.

+0

Im un po 'perso dal momento che Im solo un principiante in Java. Sto usando eclipse So come importare e aggiungere classpath, ma non posso vedere librerie o jar scaricabili nel tuo link fornito. Mi può aiutare, signore? Grazie – Raf

+0

@ user1078782 ecco il link per il download http://commons.apache.org/lang/download_lang.cgi –

+0

Quale download e cosa fai una volta scaricato? – CodyBugstein

30

StringUtils è un Apache Commons project. È necessario scaricare e aggiungere la libreria al classpath.

Per utilizzare:

import org.apache.commons.lang3.StringUtils; 
8

StringUtils è in org.apache.commons.lang * non in java.lang *... La cosa più importante è imparare a leggere il file javadoc. Tutti i programmatori java dopo aver imparato java di base imparano a leggere javadoc, eseguono test da progetti pubblici, usano questi vasi nei loro progetti.

Se si sta lavorando su eclipse o netbeans, è possibile creare una directory (cartella) denominata lib nel progetto (dall'interno dell'IDE) e copiare il jar scaricato dal disco rigido e incollarlo in tale directory da eclipse o netbeans. Quindi devi aggiungerlo al tuo progetto.

In caso di eclissi da Progetto-> Proprietà selezionare Percorso build Java -> Aggiungi barattoli, puntare al barattolo copiato in precedenza. Nel tuo caso potrebbe essere commons-lang-version.jar.

Dopo questo passaggio ogni volta che si aggiunge l'importazione precedente in un file java, tali librerie saranno disponibili sul progetto (nel caso di eclipse o netbeans).

Da dove prendi il barattolo di commons-lang? Radice directory di eventuali beni comuni Apache è http://commons.apache.org/ E per commons-lang è http://commons.apache.org/lang/

Alcune di queste librerie contengono Guida per l'utente e altro aiuto per iniziare, ma javadoc è la guida definitiva per qualsiasi programmatore java.

E 'giunto il momento di chiederti di questa libreria, perché non dovresti mai reinventare la ruota. Utilizzare i comuni Apache e altre librerie ben testate, quando possibile. Usando queste librerie ometti alcuni errori umani comuni e persino collaudi quelle librerie (usando sta testando). A volte, in futuro, quando usi questa libreria, potresti persino scrivere alcune modifiche o aggiunte a questa libreria. Se contribuisci, il mondo ne beneficia.

L'uso più comune di StringUtils è nei progetti Web (quando si desidera verificare stringhe vuote o nulle, controllare se una stringa è numero, dividere stringhe con un token). StringUtils aiuta a sbarazzarsi di quelle brutte formazioni NumberFormat e Null. Ma StringUtils può essere utilizzato ovunque stringa viene utilizzata.

+0

Il tuo collegamento javadoc si è rotto! Puoi aggiornarlo? –

4

Se si sta sviluppando per Android c'è textutils di classe che possono essere d'aiuto:

import android.text.TextUtils; 

E 'davvero aiuta molto per controllare l'uguaglianza di stringhe.
Per esempio, se avete bisogno di controllare le stringhe s1, uguaglianza s2 (che può essere null) si può utilizzare invece di

if((s1 != null && !s1.equals(s2)) || (s1 == null && s2 != null)) 
{ ... } 

questo metodo semplice:

if(!TextUtils.equals(s1, s2)) 
{ ... } 

Per quanto riguarda la domanda iniziale - per la sostituzione è più facile da usare s1. replace().

0

StringUtils fa parte di Apache Commons Lang (http://commons.apache.org/lang/, e come il nome suggerisce fornisce alcune belle utilità per trattare con le stringhe, che va al di là di ciò che viene offerto in java.lang.String, costituito da oltre 50 metodi statici

Sono disponibili due versioni diverse, la più recente org.apache.commons.lang3.StringUtils e la più vecchia org.apache.commons.lang.StringUtils. non ci sono davvero differenze significative tra i due. lang3.StringUtils richiede Java 5.0 ed è probabilmente la versione che si desidera utilizzare.

Problemi correlati