Olá pessoal,
é possível através de String.format fazer a inserção de zeros à direita?
Exemplos:
45 --> 45000
233 --> 23300
1 --> 10000
Att.
Olá pessoal,
é possível através de String.format fazer a inserção de zeros à direita?
Exemplos:
45 --> 45000
233 --> 23300
1 --> 10000
Att.
Não adianta multiplicar por 100, como é o seu caso?
Não sei pq usa String para numeros mas tenta isso, acho que e isso que você quer ne?
String numero = "8";
numero =numero.concat("000");
System.out.println(numero);
Olá,
o problema é que a quantidade total de caracteres é fixa. Neste caso é 5:
45 --> 45000
233 --> 23300
1 --> 10000
foi resolvido desta forma:
int x=45;
String s = "000000";
String sx = (x + s).substring(0,6);
mas queria saber se String.format também pode ser usada neste caso.
Att.
acho que a apache tem aqueles utils que ajuda muito
tem um metodo StringUtils.rightPad que preenche com x 0’s o que vc quiser 
deu minha hora no trabalho cheguei ate aqui =)
DecimalFormat formatter = new DecimalFormat("00000");
formatter.setMaximumIntegerDigits(5);
String s = formatter.format(x);
System.out.println(s);
private static final int MULTIPLIER = 10;
private static final int MAX_POSITIVE_EXCLUSIVE = 100000;
private static final int MAX_NEGATIVE_EXCLUSIVE = -100000;
private static final String ZERO = "00000";
public static String getAnswer(int number) {
if (number < 0) {
while ((number * 10) > MAX_NEGATIVE_EXCLUSIVE) {
number *= MULTIPLIER;
}
} else if (number > 0) {
while ((number * 10) < MAX_POSITIVE_EXCLUSIVE) {
number *= MULTIPLIER;
}
} else {
return ZERO;
}
return String.valueOf(number);
}
Usar a StringUtils da Apache ou DecimalFormat pode resolver melhor o seu problema (porque desse jeito que fiz, é só rpad).
Valeu pessoal,
depois vou fazer uns testes de performance daí posto aqui as conclusões.
Att.