Olá Pessoal.
Alguem poderia me ajudar com alguma dica como colocar espaços a frente de um número.
Por Exemplo:
1
200
20
2000
gostaria que ao invés de ficar alinhados a esquerda, ficar tudo à direita, isto no console
Até tentei usando o DecimalFormat, mas sem sucesso... OK!
Agradeço a Ajuda. :)
/* Exemplo: * 1 * 20 * 200 * 2000*/publicstaticvoidprintMatrizFatorial(){DecimalFormatdf=newDecimalFormat(" ");System.out.println("\n Matriz resultado mostra o Fatorial");SymbolString.symbol("-",29);for(inti=0;i<=2;i++){for(intj=0;j<=2;j++){System.out.print("| "+df.format(matFat[i][j]));}System.out.print(" |");System.out.println("");SymbolString.symbol("-",29);}}
Acho que essa duvida ja foi respondida aqui no GUJ…
Bills1 like
Use o printf indicando o numero de espaços que voce quer, assim:
System.out.printf("%10d",intVar); // Numero em negrito é o numero de espaços para o alinhamento
Exemplo:
public class PrintfDemo {
public static void main(String[] args) {
int i = 12, j = 123;
System.out.printf("%10d\n",i);
System.out.printf("%10d\n",j);
}
}
Caso não conheça o printf, pesquise sobre ele.
E
entanglement
packageguj;publicclassExemploEspacosEmNumeros{publicstaticvoidmain(String[]args){System.out.println("---- Espaços à esquerda - exemplo: %5d ");for(inti=1;i<=10;++i){System.out.printf("%2d - [%"+i+"d]%n",i,123);}System.out.println("---- Espaços à direita - exemplo: %-5d ");for(inti=1;i<=10;++i){System.out.printf("%2d - [%-"+i+"d]%n",i,123);}System.out.println("---- Zeros à esquerda - exemplo: %05d ");for(inti=1;i<=10;++i){System.out.printf("%2d - [%0"+i+"d]%n",i,123);}System.out.println("---- Separadores de milhar - exemplo: %,5d ");for(inti=1;i<=10;++i){System.out.printf("%2d - [%,"+i+"d]%n",i,123456);}}}
DecimalFormat não é muito prático nesses casos.
denisspitfire
nao daria para fazer algum calculo com o numero… e por algum resultado dai entao por um laço for iria inserindo espaços… mas creio que nao vai ficar perfeito mesmo assim.
Bills
Para que todo esse trabalho? Pesquisa um pouco sobre o printf, é uma function super simples de entender.
E
entanglement
É, o cálculo a ser feito com o número basicamente é determinar o número de algarismos de um número, o que envolve normalmente uma divisão repetida por 10 - ou então achar o logaritmo decimal do valor absoluto desse número.
Mas em vez disso, não é mais fácil usar algo pronto, como o printf?