Métodos Arryas

Alguém pode dar uma ajuda eu elaborei o código porém quando testo a classe volta como tivesse codificado.

Elabore uma classe chamada “MeusArrays” contendo dois métodos que realizam operações com arrays, conforme a descrição a seguir. Faça também outra classe para testar os métodos:

  • a. um método que recebe dois arrays de inteiros e um número inteiro. Pesquise se esse número inteiro existe nos dois arrays e de um retorno conforme a descrição seguinte: se o número não for encontrado em nenhum dos arrays, retorne 0; caso encontre em um dos arras, retorne 1; e caso seja localizado nos dois arrays, retorne 2.

  • b. um método que recebe um valor inteiro (n) e retorna um array contendo n elementos inteiros gerados randomicamente. Os valores gerados devem estar entre 0 e 1000.

Segue código abaixo:

import java.util.Random;

public class MeusArrays {

    public static int[] gerar(int length){
        Random aleatorios = new Random();
        int[] vet = new int[length];
        for(int i = 0; i < length; i++){
            vet[i] = aleatorios.nextInt(1001);
        }
        return vet;
    }  
}

Classe para testar

public class Testar {

    public static void main(String[] args) {
        System.out.println(MeusArrays.gerar(5));
    }
}

Provavelmente está imprimindo o hashcode do array. Para imprimir os valores, vc pode fazer num forEach ou usar: Arrays.toString(seuArray);

Más, na na classe que chama para testar ou no MeuArrays

Melhor que seja na classe Teste, pois a responsabilidade do método gerar na classe MeuArrays é apenas gerar e retornar o array (a boa prática é um método ter apenas uma responsabilidade).

System.out.println(Arrays.toString(MeusArrays.gerar(5)));
public class Testar {

    public static void main(String[] args) {
        System.out.println(Arrays.toString(MeusArrays.gerar(5)));

        //System.out.println(MeusArrays.gerar(5));
    }
}

apresenta erro.

Vc fez o import da classe Arrays?

import java.util.Arrays;

Sempre que der algum erro, sempre diga qual foi para agilizar. Pra gente já saber o que pode ter acontecido.

hahahaha foi mal pequeno detalhe tava esquecendo obrigado jovem .

1 curtida

Nesse outro consegue da uma força tbm :relaxed:
a. um método que recebe dois arrays de inteiros e um número inteiro. Pesquise se esse número inteiro existe nos dois arrays e de um retorno conforme a descrição seguinte: se o número não for encontrado em nenhum dos arrays, retorne 0; caso encontre em um dos arras, retorne 1; e caso seja localizado nos dois arrays, retorne 2.

Vc pode fazer a pesquisa no array assim:

public class Main {

	public static void main(String[] args) {
		int[] numeros = new int[] { 1, 2, 3, 4, 5 };
		int numeroBusca = 6;
		int flagBusca = 0;
		
		for (int n : numeros) {
			if (n == numeroBusca) {
				flagBusca = 1;
			}
		}
		
		System.out.println(flagBusca == 1 ? "Encontrou" : "Não foi encontrado!");
	}
}

Tente adaptar de acordo com o enunciado.

Ok, vlw muito obrigado.

Vlw, muito obrigado.