java中两个数组的和
我对Java编程相当陌生。这里有一个赋值,告诉我如何求两个数组的和。其实很简单,但我很难弄清楚所有的语法。这里是我正在谈论的问题,下面是我已经走了多远 主类 第一小班java中两个数组的和,java,arrays,Java,Arrays,我对Java编程相当陌生。这里有一个赋值,告诉我如何求两个数组的和。其实很简单,但我很难弄清楚所有的语法。这里是我正在谈论的问题,下面是我已经走了多远 主类 第一小班 packagearraysum; 导入java.util.Scanner; 公共类数组{ int arr1[]=新int[10]; 扫描仪输入=新扫描仪(System.in); 公共阵列(){ System.out.println(“输入第一个数组的元素”); 对于(intx=0;x我没有足够的声誉来评论,所以我会回答 您不需要为
packagearraysum;
导入java.util.Scanner;
公共类数组{
int arr1[]=新int[10];
扫描仪输入=新扫描仪(System.in);
公共阵列(){
System.out.println(“输入第一个数组的元素”);
对于(intx=0;x我没有足够的声誉来评论,所以我会回答
您不需要为每个数组创建一个类,只需执行以下操作(只是一个伪代码)
你的求和减法应该是这样的
public class ArrayMath {
public static int[] sum(int [] arrOne,int [] arrTwo) {
if(arrOne.length!=arrTwo.length) {// check if length is same
return null;
}
int[] returnArray = new int[arrOne.length];
for(int i=0;i<arrOne.length;i++) { // adding with same index
returnArray[i]=arrOne[i]+arrTwo[i];
}
return returnArray;
}
public static int[] subtract(int [] arrOne,int [] arrTwo) {
if(arrOne.length!=arrTwo.length) { // checking length is same
return null;
}
int[] returnArray = new int[arrOne.length];
for(int i=0;i<arrOne.length;i++) { // subtracting with same index
returnArray[i]=arrOne[i]-arrTwo[i];
}
return returnArray;
}
}
公共类数组math{
公共静态int[]和(int[]arrOne,int[]arrTwo){
如果(arrOne.length!=arrTwo.length){//检查长度是否相同
返回null;
}
int[]returnArray=new int[arrOne.length];
对于(int i=0;i试试这个,它会给你加法
package com.arraysum;
import java.util.Scanner;
public class Addition {
public static void main(String[] args) {
System.out.println("Enter the two array size..");
Scanner input = new Scanner(System.in);
int size = input.nextInt();
int[] one= new int[size],two = new int[size];
System.out.println("Enter the array elements of Array-One");
for (int i = 0; i <size; i++) {
one[i]=input.nextInt();
}
System.out.println("Enter the array elements of Array-Two");
for (int i = 0; i <size; i++) {
two[i]=input.nextInt();
}
Addition(one,two);
}
private static void Addition(int[] one, int[] two){
System.out.print("Array One"+"\t");
for (int i = 0; i <one.length; i++) {
System.out.print(one[i] + "\t");
}
System.out.println();
System.out.print("Array Two"+"\t");
for (int i = 0; i <two.length; i++) {
System.out.print(two[i]+ "\t");
}
System.out.println();
System.out.println("---------------------");
int result[]=new int[one.length];
for (int i = 0; i < result.length; i++) {
result[i]=one[i]+two[i];
}
System.out.println("Sum Of Two Arrays ");
System.out.print(" Sum "+"\t"+"\t");
Arrays.sort(result);
for (int i = 0; i < result.length; i++) {
System.out.print(result[i]+"\t");
}
}
}
package com.arraysum;
导入java.util.Scanner;
公共类添加{
公共静态void main(字符串[]args){
System.out.println(“输入两个数组大小…”);
扫描仪输入=新扫描仪(System.in);
int size=input.nextInt();
int[]一=新的int[size],二=新的int[size];
System.out.println(“输入数组一的数组元素”);
对于(inti=0;i如果我了解您需要什么,您应该跳过处理类层次结构。
只需初始化两个数组,然后创建一个新的sumArray并复制其中的值
import java.util.Arrays;
public class ArTestSum {
public static void main(String... args) {
int[] ar1 = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
int[] ar2 = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
int[] arSum = new int[ar1.length + ar2.length]; // it is OK because
// known in compile time
int i = 0;
for (int val : ar1) {
arSum[i++] = val;
}
for (int val : ar2) {
arSum[i++] = val;
}
System.out.println(Arrays.toString(arSum));
}
}
下面是您的问题的代码片段。希望这对您有用
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int arr1[] = new int[10];
int result[] = new int[10];
System.out.println("Enter the elements of the 1st array");
for (int x = 0; x < arr1.length; x++) {
arr1[x] = input.nextInt();
}
int arr2[] = new int[10];
System.out.println("Enter the elements of the 2nd array");
for (int x = 0; x < arr2.length; x++) {
arr2[x] = input.nextInt();
}
for (int i = 0; i < arr1.length; i++) {
result[i] = arr1[i] + arr2[i];
}
Arrays.sort(result);
for (int i = 0; i < result.length; i++) {
System.out.println(result[i]);
}
}
publicstaticvoidmain(字符串[]args){
扫描仪输入=新扫描仪(System.in);
int arr1[]=新int[10];
整数结果[]=新整数[10];
System.out.println(“输入第一个数组的元素”);
对于(int x=0;x
sum是什么意思他必须把索引为0的元素和索引为2的元素相加,这样他就可以得到一个新的数组和结果。库达贝:为什么你要为每个数组创建一个类?这没有什么实际意义。有人可以轻松获得+15。你可以将两个数组中位于同一位置的值相加。只要它们的大小匹配,你就应该只做一个for循环当变量小于其中一个数组的大小时,在0处进行赋值。使用该循环变量从2个数组中提取每个值,然后将它们相加。我不明白这里会发生什么:程序应该能够执行相应对象调用的加法()和减法()方法。您错过了排序部分。您应该添加类似于Arrays的内容。sort(array)
用于按升序排序。减法和加法难道不意味着您也应该能够对两个数组中的任何元素进行运算吗?类似于int sum=add(arr1[2]+arr2[5]);
或int sum=subtract(arr1[9]-arr[3]);
例如,是否打印结果?
public class ArrayMath {
public static int[] sum(int [] arrOne,int [] arrTwo) {
if(arrOne.length!=arrTwo.length) {// check if length is same
return null;
}
int[] returnArray = new int[arrOne.length];
for(int i=0;i<arrOne.length;i++) { // adding with same index
returnArray[i]=arrOne[i]+arrTwo[i];
}
return returnArray;
}
public static int[] subtract(int [] arrOne,int [] arrTwo) {
if(arrOne.length!=arrTwo.length) { // checking length is same
return null;
}
int[] returnArray = new int[arrOne.length];
for(int i=0;i<arrOne.length;i++) { // subtracting with same index
returnArray[i]=arrOne[i]-arrTwo[i];
}
return returnArray;
}
}
public class ArraySum {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Enter the size of the arrays : ");
int size = input.nextInt();
int arrayOne[] = new int[size];
int arrayTwo[] = new int[size];
for(int i=0;i<size;i++){
System.out.println("Enter the "+i+"th elements of the 1st array");
arrayOne[i]=input.nextInt();
System.out.println("Enter the "+i+"th elements of the 2st array");
arrayTwo[i]=input.nextInt();
}
// Now you can call the methods
int[] additionArray=ArrayMath.sum(arrayOne,arrayTwo);
int[] subtractionArray=ArrayMath.subtract(arrayOne, arrayTwo);
if(additionArray==null){
System.out.println("Both array are not of same size hence cannot add");
} else {
System.out.println("Addition of array is");
Arrays.sort(additionArray);
for(int i=0; i<additionArray.length;i++){
System.out.println(additionArray[i]+" ");
}
}
if(subtractionArray==null){
System.out.println("Both array are not of same size hence cannot subtract");
} else {
System.out.println("Subtraction of array is");
Arrays.sort(subtractionArray);
for(int i=0; i<subtractionArray.length;i++){
System.out.println(subtractionArray[i]+" ");
}
}
}
}
public class ArrayMath {
private int[] array;
public ArrayMath(int[] arr){
this.array=arr;
}
public int[] sum(int [] arr) {
if(array.length!=arr.length){
return null;
}
int[] returnArray = new int[array.length];
for(int i=0;i<array.length;i++) {
returnArray[i]=array[i]+arr[i];
}
return returnArray;
}
public int[] subtract(int [] arr) {
if(array.length!=arr.length){
return null;
}
int[] returnArray = new int[array.length];
for(int i=0;i<array.length;i++) {
returnArray[i]=array[i]-arr[i];
}
return returnArray;
}
}
public class ArraySum {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Enter the size of the arrays : ");
int size = input.nextInt();
int arrayOne[] = new int[size];
int arrayTwo[] = new int[size];
for(int i=0;i<size;i++){
System.out.println("Enter the "+i+"th elements of the 1st array");
arrayOne[i]=input.nextInt();
System.out.println("Enter the "+i+"th elements of the 2st array");
arrayTwo[i]=input.nextInt();
}
ArrayMath arrayMath = new ArrayMath(arrayOne);
// Now you can call the methods
int[] additionArray=arrayMath.sum(arrayTwo);
int[] subtractionArray=arrayMath.subtract(arrayTwo);
if(additionArray==null){
System.out.println("Both array are not of same size hence cannot add");
} else {
System.out.println("Addition of array is");
Arrays.sort(additionArray);
for(int i=0; i<additionArray.length;i++){
System.out.println(additionArray[i]+" ");
}
}
if(subtractionArray==null){
System.out.println("Both array are not of same size hence cannot subtract");
} else {
System.out.println("Subtraction of array is");
Arrays.sort(subtractionArray);
for(int i=0; i<subtractionArray.length;i++){
System.out.println(subtractionArray[i]+" ");
}
}
}
}
package com.arraysum;
import java.util.Scanner;
public class Addition {
public static void main(String[] args) {
System.out.println("Enter the two array size..");
Scanner input = new Scanner(System.in);
int size = input.nextInt();
int[] one= new int[size],two = new int[size];
System.out.println("Enter the array elements of Array-One");
for (int i = 0; i <size; i++) {
one[i]=input.nextInt();
}
System.out.println("Enter the array elements of Array-Two");
for (int i = 0; i <size; i++) {
two[i]=input.nextInt();
}
Addition(one,two);
}
private static void Addition(int[] one, int[] two){
System.out.print("Array One"+"\t");
for (int i = 0; i <one.length; i++) {
System.out.print(one[i] + "\t");
}
System.out.println();
System.out.print("Array Two"+"\t");
for (int i = 0; i <two.length; i++) {
System.out.print(two[i]+ "\t");
}
System.out.println();
System.out.println("---------------------");
int result[]=new int[one.length];
for (int i = 0; i < result.length; i++) {
result[i]=one[i]+two[i];
}
System.out.println("Sum Of Two Arrays ");
System.out.print(" Sum "+"\t"+"\t");
Arrays.sort(result);
for (int i = 0; i < result.length; i++) {
System.out.print(result[i]+"\t");
}
}
}
import java.util.Arrays;
public class ArTestSum {
public static void main(String... args) {
int[] ar1 = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
int[] ar2 = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
int[] arSum = new int[ar1.length + ar2.length]; // it is OK because
// known in compile time
int i = 0;
for (int val : ar1) {
arSum[i++] = val;
}
for (int val : ar2) {
arSum[i++] = val;
}
System.out.println(Arrays.toString(arSum));
}
}
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int arr1[] = new int[10];
int result[] = new int[10];
System.out.println("Enter the elements of the 1st array");
for (int x = 0; x < arr1.length; x++) {
arr1[x] = input.nextInt();
}
int arr2[] = new int[10];
System.out.println("Enter the elements of the 2nd array");
for (int x = 0; x < arr2.length; x++) {
arr2[x] = input.nextInt();
}
for (int i = 0; i < arr1.length; i++) {
result[i] = arr1[i] + arr2[i];
}
Arrays.sort(result);
for (int i = 0; i < result.length; i++) {
System.out.println(result[i]);
}
}