Exercício megaSenna

estou fazendo um exercício em java, e consegui fazer gerar 6 numeros aleatórios, agora as vezes o numero está dando repetido, alguém poderia me ajudar:?

package br.com.triadworks.exercicios;

import java.util.Random;


public class MegaSenna {

	public static void main(String[] args) {

		Random radom = new Random();
		gerandoNumeroSorteio(radom);
	}

	private static void gerandoNumeroSorteio(Random radom) {
		int numeroTmp;
		for (int i = 0; i < 6; i++) {
			numeroTmp = radom.nextInt(60 + 1);
			System.out.println((i+1)+"º numero sorteado = " + numeroTmp);
		}
	}

}

tente assim:

private static void gerandoNumeroSorteio(Random radom) {
		int[] numeroTmp; //cria vetor numeroTmp[]
		for (int i = 0; i < 6; i++) {
			numeroTmp[i] = radom.nextInt(60 + 1);//armazena um número sorteado em cada indice do vetor
                        for(int j = 0; j < 6; j++) {
                             if(numeroTmp[i] != numeroTmp[j]) {//compara se o número atual é diferente dos anteriores(repetido)
                                   System.out.println((i+1)+"º numero sorteado = " + numeroTmp[i]);//se for diferente dos anteriores imprime na tela
                             } else {i--}//se não for diferente diminui 'i' e sorteia novamente no mesmo índice

                        }
			
		}

Basta vc guardar os números anteriores em um vetor

A cada novo número sorteado verifica se já existe no vetor

Se já existe, sorteia de novo, se não continua.

ao rodar:

Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException: -1
at br.com.triadworks.exercicios.MegaSenna.gerandoNumeroSorteio(MegaSenna.java:19)
at br.com.triadworks.exercicios.MegaSenna.main(MegaSenna.java:34)

então tente assim:

	private static void gerandoNumeroSorteio(Random radom) {
		int[] numeroTmp = new int[6];
		for (int i = 0; i < 6; i++) {
			numeroTmp[i] = radom.nextInt(60 + 1);
                        if(i == 0) {
                             System.out.println((i+1)+"º numero sorteado = " + numeroTmp[i]);
                        } else if(!(numeroTmp[i] == numeroTmp[0]) ||(numeroTmp[i] == numeroTmp[1]) || (numeroTmp[i] == numeroTmp[2]) || (numeroTmp[i] == numeroTmp[3]) || (numeroTmp[i] == numeroTmp[4]) || (numeroTmp[i] == numeroTmp[5])) {
                              System.out.println((i+1)+"º numero sorteado = " + numeroTmp[i]);
                        }
		}
	}

valeu amigo pela ajuda.

fiz assim:

public class MegaSenna {

public static void main(String[] args) {

	Random radom = new Random();
	List<Integer> randomNumbers = gerandoNumeroSorteio(radom);

	System.out.println(".....Numero Sorteado.....");
	for (int i = 0; i < 6; i++) {
		System.out.println((i + 1) + "º numero sorteado = " + randomNumbers.get(i));
	}
}

private static List<Integer> gerandoNumeroSorteio(Random radom) {
	List<Integer> randomNumbers = new ArrayList<>();
	int numeroTmp;
	int cont = 0;

	while (cont < 6) {
		numeroTmp = radom.nextInt(60 + 1);
		if (!randomNumbers.contains(numeroTmp)) {
			randomNumbers.add(numeroTmp);
			cont++;
		}
	}
	return randomNumbers;
}

}