O formato de string java() O método retorna a string formatada por determinado local, formato e argumentos.
Se você não especificar a localidade no método String.format(), ele usará a localidade padrão chamando Locale.getDefault() método.
O método format() da linguagem java é como sprintf() função em linguagem c e imprimirf() método da linguagem java.
Implementação interna
public static String format(String format, Object... args) { return new Formatter().format(format, args).toString(); } Assinatura
Existem dois tipos de método string format():
public static String format(String format, Object... args) and, public static String format(Locale locale, String format, Object... args)
Parâmetros
local : especifica a localidade a ser aplicada no método format().
formatar : formato da string.
argumentos : argumentos para a string de formato. Pode ser zero ou mais.
Devoluções
string formatada
Lança
Null Pointer Exception : se o formato for nulo.
IllegalFormatException : se o formato for ilegal ou incompatível.
Exemplo de método Java String format()
public class FormatExample{ public static void main(String args[]){ String name='sonoo'; String sf1=String.format('name is %s',name); String sf2=String.format('value is %f',32.33434); String sf3=String.format('value is %32.12f',32.33434);//returns 12 char fractional part filling with 0 System.out.println(sf1); System.out.println(sf2); System.out.println(sf3); }} Teste agora name is sonoo value is 32.334340 value is 32.334340000000
Especificadores de formato de string Java
Aqui, fornecemos uma tabela de especificadores de formato suportados pela Java String.
| Especificador de formato | Tipo de dados | Saída |
|---|---|---|
| %a | ponto flutuante (exceto GrandeDecimal ) | Retorna a saída hexadecimal do número de ponto flutuante. |
| %b | Qualquer tipo | 'true' se não for nulo, 'false' se for nulo |
| %c | personagem | Caractere Unicode |
| %d | inteiro (incl. byte, short, int, long, bigint) | Número inteiro decimal |
| %e | ponto flutuante | número decimal em notação científica |
| %f | ponto flutuante | número decimal |
| %g | ponto flutuante | número decimal, possivelmente em notação científica dependendo da precisão e do valor. |
| %h | qualquer tipo | String hexadecimal de valor do método hashCode(). |
| %n | nenhum | Separador de linhas específico da plataforma. |
| %o | inteiro (incl. byte, short, int, long, bigint) | Número octal |
| %s | qualquer tipo | Valor da sequência |
| %t | Data/Hora (incluindo longo, Calendário, Data e TemporalAccessor) | %t é o prefixo para conversões de data/hora. Mais sinalizadores de formatação serão necessários depois disso. Veja conversão de data/hora abaixo. |
| %x | inteiro (incl. byte, short, int, long, bigint) | Corda hexadecimal. |
Java String format() Método Exemplo 2
Este método oferece suporte a vários tipos de dados e os formata em um tipo de string. Vejamos um exemplo.
public class FormatExample2 { public static void main(String[] args) { String str1 = String.format('%d', 101); // Integer value String str2 = String.format('%s', 'Amar Singh'); // String value String str3 = String.format('%f', 101.00); // Float value String str4 = String.format('%x', 101); // Hexadecimal value String str5 = String.format('%c', 'c'); // Char value System.out.println(str1); System.out.println(str2); System.out.println(str3); System.out.println(str4); System.out.println(str5); } } Teste agora 101 Amar Singh 101.000000 65 c
Java String format() Método Exemplo 3
Além da formatação, podemos definir largura, preenchimento, etc. de qualquer valor. Vejamos um exemplo em que definimos largura e preenchimento para um valor inteiro.
public class FormatExample3 { public static void main(String[] args) %10d } Teste agora 101 | 101| |101 | | 101| |0000000101|