2011-03-09 13 views

Respuesta

8

manera complicada (usando formateador)

StringBuilder sb = new StringBuilder(); 
// Send all output to the Appendable object sb 
Formatter formatter = new Formatter(sb, Locale.US); 

// Explicit argument indices may be used to re-order output. 
formatter.format("%4$2s %3$2s %2$2s %1$2s", "a", "b", "c", "d") 

O manera más sencilla:

String.format 
+0

¿Qué significa 4 $ 2? – user496949

+0

@ user496949 - por SDK puede usar el mismo argumento dos o más veces en cualquier orden, '% [argument_index $] [flags] [width] [. Precision] conversion' - así que index $ - es un marcador opcional que le permite especificar el formato cadena en otras órdenes que argumentos fuente. – Dewfy

2
+0

Lamentablemente este enlace redirige a la página genérica http://www.oracle.com /technetwork/java/index.html –

+1

@RussellSilva, cambió el enlace para que apunte a una versión archivada del artículo. –

13

En cierto modo la String.Format es como tener un método de Java disponible sprintf aquí

String status = String.format("The rename status is (%d)", RENAME_SUCCEEDED); 

Se puede ver la example aquí también

0

Al parecer, el prejuicio irracional contra los datos numérico sin signo se extiende a esto también. El elemento% u format brilla por su ausencia en el conjunto compatible.

Cuestiones relacionadas