I'm trying to make java program that user can fill arrays with numbers then he can hunt them by typing its value the problem is when I try to fill array it only fills with last one typed. Can someone help me figure it out ?
package methods;
import java.util.Arrays;
import java.util.stream.IntStream;
public class HuntTheNumbers {
public void huntingNumbersInArray(int[] ints, int userNumbersInput) {
boolean contains = IntStream.of(ints).anyMatch(x->x==userNumbersInput);
if (contains) {
System.out.println(userNumbersInput+" is found");
}else {
System.out.println("value not found");
}
}
public void fillArray(int[] ints, int userNumbersToFillArray){
Arrays.fill(ints, userNumbersToFillArray);
}
}
import methods.CombineNumbers;
import methods.HuntTheNumbers;
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
HuntTheNumbers huntTheNumbers = new HuntTheNumbers();
boolean start = true;
int[] ints = new int[6];
int[] firstArrayToMerge = new int[4];
int[] secondArrayToMerge = new int[4];
Scanner scanner = new Scanner(System.in);
while (start) {
System.out.println("======Menu======");
System.out.println("1:Hunt the numbers");
System.out.println("2:Combine the numbers");
System.out.println("3:Quit");
String command = scanner.next();
if (command.equalsIgnoreCase("1")) {
System.out.println("Enter total number of elements");
int userNumberLengthInput = scanner.nextInt();
if (userNumberLengthInput > ints.length) {
start = false;
System.out.println("You can't put that many numbers in this array max size is 5");
} else {
System.out.println("Enter " + userNumberLengthInput + " elements");
for (int i = 0; i < userNumberLengthInput; i++) {
int userNumbersToFillArray = scanner.nextInt();
Arrays.fill(ints, userNumbersToFillArray);
}
System.out.println("Enter request value");
int requestValue = scanner.nextInt();
huntTheNumbers.huntingNumbersInArray(ints, requestValue);
}
} else if (command.equalsIgnoreCase("2")) {
System.out.println("Enter total elements in first array");
int totalElementsInFirstArray = scanner.nextInt();
if (totalElementsInFirstArray > firstArrayToMerge.length) {
System.out.println("You can't put that many elements max size is 9");
start=false;
} else {
System.out.println("Enter elements of first Array");
for (int i = 0; i < totalElementsInFirstArray; i++) {
int userNumbersToFillArray = scanner.nextInt();
huntTheNumbers.fillArray(firstArrayToMerge, userNumbersToFillArray);
}
}
System.out.println("Enter total elements in second array");
int totalElementsInSecondArray = scanner.nextInt();
if (totalElementsInSecondArray > secondArrayToMerge.length) {
System.out.println("You can't put that many elements max size is 9");
start=false;
} else {
System.out.println("Enter elements of second Array");
for (int i = 0; i < totalElementsInSecondArray; i++) {
int userNumbersToFillArray = scanner.nextInt();
huntTheNumbers.fillArray(secondArrayToMerge, userNumbersToFillArray);
}
}
CombineNumbers combineNumbers = new CombineNumbers();
combineNumbers.mergeArrays(firstArrayToMerge, secondArrayToMerge);
} else if (command.equalsIgnoreCase("3")) {
start=false;
}
}
}
}