Problema com ordenação de vetor

Boa tarde

Po to fazendo uma revisão aqui e to apanhando pra conseguir ordenar este diaxo… eu tipo montei o código e ele ordena só a primeira linha cara,… alguem sabe o que pode ser… to batendo nisso ja faz mó cara ja.
valeu

[code]
import java.util.*;
public class Ordena{

public static void main(String args[]){

int[] a = new int[10];
int aux;
int cont = 0;
int cont2 = 1;

for(cont = 0; cont<10; cont++){
System.out.println("Digite um valor:");
Scanner src = new Scanner(System.in);
 a[cont] = src.nextInt();
}	

for(cont=0; cont<9; cont++){
	for(cont2=1; cont2<10;cont2++){
	if(a[cont] > a[cont2]){
	aux = a[cont];
	a[cont]=a[cont2];
	a[cont2] = aux;
	}
}
	System.out.println("Matriz Ordenada\n");
for(cont = 0; cont<10; cont++){
	System.out.println(a[cont]);
	}
}

}
}[/code]

Alguns problemas:

Não é uma matriz mas sim um vetor;
Tire o Matriz ordenada (Vetor ordenado) de dentro do laço que ordena coloque ele no final;
Mude o 1 no for mais interno para cont;

import java.util.Scanner;


public class Teste {

	public static void main(String args[]){

		int[] a = new int[10];
		int aux;
		int cont = 0;
		int cont2 = 1;

		for(cont = 0; cont<10; cont++){
			System.out.println("Digite um valor:");
			Scanner src = new Scanner(System.in);
			a[cont] = src.nextInt();
		}	

		for(cont=0; cont<9; cont++){
			for(cont2=cont; cont2<10;cont2++){
				if(a[cont] > a[cont2]){
					aux = a[cont];
					a[cont]=a[cont2];
					a[cont2] = aux;
				}
			}			
		}
		
		System.out.println("Vetor Ordenado\n");
		for(cont = 0; cont<10; cont++){
			System.out.println(a[cont]);
		}
	}

}

ps.: BubleSort é uma merd…

Puts… pode cre…valeu

e sim é uma merda

Bom dia, também sou um iniciante, mas o trecho " [color=red]System.out.println(“Digite um valor:”);[/color] " linha 14, não deveria estar fora do loop.

Ao meu ver, você a cada iteração cria uma nova instância.

Abraço, Fabrício :smiley:

[code]import java.util.Scanner;

public class Teste {

public static void main(String args[]){

	int[] a = new int[10];
	int aux;
	int cont = 0;
	int cont2 = 1;

	for(cont = 0; cont<10; cont++){
		System.out.println("Digite um valor:");
		Scanner src = new Scanner(System.in);
		a[cont] = src.nextInt();
	}	

	for(cont=0; cont<9; cont++){
		for(cont2=cont; cont2<10;cont2++){
			if(a[cont] > a[cont2]){
				aux = a[cont];
				a[cont]=a[cont2];
				a[cont2] = aux;
			}
		}			
	}
	
	System.out.println("Vetor Ordenado\n");
	for(cont = 0; cont<10; cont++){
		System.out.println(a[cont]);
	}
}

}[/code]

Mas a linha 14 não está fora do loop.

Flw!

Também não sou muito experiente nesta área mas acredito que deveria estar fora sim esta parte
" Scanner src = new Scanner(System.in); "

deixando dentro do loop somente algo deste tipo “src = new Scanner(System.in);” e fora dele " Scanner src;" pelo motivo de ficar criando novas instância que você sitou

O Scanner com certeza, pra não ter que ficar fazendo um objeto pra cada iteração.
Linha 15.
Eu não tinha visto isso.

Flw!

Desculpem a vergonha, e na linha 15 mesmo!