我需要交換數組之間的元素。在數組之間交換元素 - java
Array1 = {1,3,-5,4,2,-8}
Array2 = {2,4,7,8,-9}
Array3 = {1,2,3,-4,6}
Array1只能包含奇數值。 Array2有一些奇數值{7,-9},應該與Array1中的偶數元素交換。 應該使用Array2中的奇數值,然後使用Array3。
public static int readInput(){
int input = 0;
// create Scanner object
Scanner scanner = new Scanner(System.in);
String option = scanner.nextLine();
if (isNumber(option)) {
input = Integer.parseInt(option);
} else {
System.out.println("Oops Something went wrong!!");
extractLargestAndSmallest();
}
return input;
}
public static void extractLargestAndSmallest(){
try{
int j = 0;
int k = 0;
System.out.println("How many arrays of int (treating these as array of arrays of int?) ");
int numberOfArrays = readInput();
System.out.println("Enter the Array size : ");
int number1 = readInput();
int numbers1[] = new int[number1];
// prompt user
System.out.print("Enter the array element values: \n");
// use for loop to obtain user input
for (int counter = 0; counter < number1; counter++) {
System.out.println("Enter the value for element at index " +counter);
numbers1[counter] = readInput();
}
System.out.println("Building the Second array --");
System.out.println("Enter the Array size :");
int number2 = readInput();
int numbers2[] = new int[number2];
System.out.print("Enter the array element values: \n");
for (int counter = 0; counter < number2; counter++) {
System.out.println("Enter the value for element at index " +counter);
numbers2[counter] = readInput();
}
System.out.println("Building the Third array --");
System.out.println("Enter the Array size :");
int number3 = readInput();
int numbers3[] = new int[number3];
System.out.print("Enter the array element values: \n");
for (int counter = 0; counter < number3; counter++) {
System.out.println("Enter the value for element at index " +counter);
numbers3[counter] = readInput();
}
System.out.println("Confirming before working through with swapping --");
System.out.println("There is/are"+ numberOfArrays +"array(s).");
System.out.println("The current array of index #0 has"+ number1 +"element(s).");
for(int i = 0; i< numbers1.length;i++){
if(numbers1[i]!=0){
System.out.println(numbers1[i]);
}
}
System.out.println("The current array of index #0 has"+ number2 +"element(s).");
for(int i = 0; i< numbers2.length;i++){
if(numbers2[i]!=0){
System.out.println(numbers2[i]);
}
}
System.out.println("The current array of index #0 has"+ number3 +"element(s).");
for(int i = 0; i< numbers3.length;i++){
if(numbers3[i]!=0){
System.out.println(numbers3[i]);
}
}
for (int i = 0; i < numbers1.length; i++) {
if ((numbers1[i])/2 == 0) {
int eventemp[] = new int[] {};
eventemp[j] = numbers1[i];
numbers1[i] = oddtemp[k];
j++;
}
}
for (int i = 0; i < numbers2.length; i++) {
if ((numbers2[i])/2 != 0) {
int oddtemp[] = new int[] {};
oddtemp[k] = numbers2[i];
k++;
}
}
} catch(Exception e){
e.printStackTrace();
}
}
到目前爲止您嘗試了什麼? –
發佈您爲此嘗試的代碼。 – Abubakkar
我投票結束這個問題作爲題外話,因爲它就像一個家庭作業,OP沒有顯示任何編碼工作。 –