2013-03-23 26 views
6

Dato s : String come posso lanciare il risultato diConvertire Char in una stringa

s.first() 

in una String?

+4

Il titolo della questione è scelto male. È assolutamente impossibile _cast_ un 'Char' in un' String'. Deve essere _ convertito_ in un 'String'. –

risposta

6

La stringa non ha una funzione .first(). Intendi .head?

Utilizzando head e restituendo una stringa è semplice come:

s.head.toString 
+0

Ok, grazie. Mi stavo affidando al completamento automatico dell'eclissi che mi suggeriva il metodo: "prima: Char - scala.collection.IterableLike'. – Aslan986

+3

Analogamente, 's.charAt (0) .toString'. Questo evita la conversione implicita di 'String' in' StringOps', quindi cose come 'head' possono essere usate. –

+3

Puoi anche usare s.substring (0,1) che ti darà direttamente una stringa. – drexin

11

È possibile utilizzare il metodo take come segue:

scala> val s = "abcdef" 
s: String = abcdef 

scala> val first = s.take(1) 
first: String = a 

scala> 
+3

Questo ha la bella proprietà di non morire sulle stringhe vuote: '" ".take (1) ==" "' –

Problemi correlati