drsmachado 23 de nov. de 2010
Dá uma olhada na classe Math do pacote java.lang e especificamente no método random().
Eric_Yuzo 23 de nov. de 2010
Pesquise sobre o método Math.random()
Cheguei atrasado. Mas o caminho é esse que o drsmachado citou.
douglaskd 23 de nov. de 2010
é mais ou menos isso, agora gera um novo hashset que não permite números repetidos(caso queira) e passei o vetor como parâmetro
e ao invés do for use um while.
enquanto o tamanho do vetor não chegar a 100 continue adicionando no Hashset, e convertendo para vetor.
public class RandomicosRepetidos {
public static void main ( String [] args ){
int [] vetor = new int [ 100 ] ;
for ( int i = 0 ; i < 100 ; i ++ ){
vetor [ i ] = ( int ) ( 1 + ( Math . random () * 100 ));
}
for ( int i = 0 ; i < 100 ; i ++ ){
System . out . println ( vetor [ i ] );
}
}
}
Naruffy 23 de nov. de 2010 1 like
Uma alternativa do Math.random, é a classe Random do pacote java.util , que eu particularmente prefiro
Random r = new Random () ;
int i = r .nextInt ( 100 ) ;
[]s
wampactimus 23 de nov. de 2010
douglaskd 23 de nov. de 2010
consegui resolver o problema dos números repetidos..se precisar, só que usando ArrayList
import java.util.ArrayList ;
public class Randomicos {
public static void main ( String [] args ){
ArrayList < Integer > lista = new ArrayList < Integer > ();
while ( lista . size () < 100 ){
Integer numeroRandomico = ( int ) ( 1 + ( Math . random () * 100 ));
if ( ! lista . contains ( numeroRandomico )){
lista . add ( numeroRandomico );
}
}
System . out . println ( lista );
}
}
tentei fazer com HashSet, mais ele fica ordenando ai é ruim.
andersonrc 23 de nov. de 2010
Fiz utilizando a interface Map, com o HashMap. O TreeSet é o que mantém as chaves ordenadas. Não sei pq com o Hash, a maioria dos números ficam ordenados, não são todos.
import java.util.HashSet ;
import java.util.Set ;
public class NumerosAleatorios {
public static void main ( String [] args ) {
Set < Integer > numeros = new HashSet < Integer > ();
while ( numeros . size () < 100 ) {
numeros . add ( 1 + ( int ) ( Math . random () * 100 ));
}
System . out . println ( "Números" + numeros );
}
}