java - 如何在这个数组操作的Java程序中定义不同的所需方法?

标签 java arrays methods

package Exercises;
import java.util.Scanner;


public class ArrayPlusN {

public static void createArray(int indeces){
    Scanner in = new Scanner(System.in);
    int valueAdded, y = 0;
    int[] arraySet = new int[indeces];
    for(int i = 0; i < arraySet.length; i++){
        System.out.printf("Enter element #%s: ",i+1);
        arraySet[i] = in.nextInt();
    }
    System.out.println("These are the elements in your array: ");
    for(int i:arraySet){
        System.out.printf("%s ", i);
    }
    System.out.println("");

    System.out.print("Enter a number to add in each of your Array's element: ");
    valueAdded = in.nextInt();
    System.out.println("These are the elements in your array when we added "+ valueAdded + " to each: ");
    for(int i:arraySet){
        arraySet[y]=i+valueAdded;
        System.out.printf("%s ", i+valueAdded);
        y++;
    }

}

public static void main(String[] args){
    Scanner in = new Scanner(System.in);
    int indeces;
    System.out.print("Enter how many array index/indeces you want: ");
    indeces = in.nextInt();
    createArray(indeces);

}
}
首先,我正在尝试编写一个程序,通过获取用户输入的用户想要创建的索引数、所述数组的元素以及要添加到所述数组上的值,在数组中的每个元素上添加一个值。这段代码没有错误,虽然你可以复制粘贴它,但我问我是否可以将其作为 OOP 来完成。我不认为这是OOP,有人可以帮忙吗?我的意思是我想将每个方法上的所有这些功能分开,这可能吗?我尝试过,但我似乎不知道如何从另一个方法调用另一个变量。我想要创建 createArray、fillArray 和 addElement 方法,使其看起来更加 OOP,而不是仅仅创建 1 个包含其中所有函数的 createArray。

最佳答案

下面是定义 ma​​in()createArray()fillArray()addElement() 方法的代码;按需要的顺序调用方法并以您想要的方式完成任务。

package Exercises;
import java.util.Scanner;

public class ArrayPlusN {
static int arraySet[];

    public void createArray(int indeces){
        Scanner in = new Scanner(System.in);
        int valueAdded, y = 0;
        arraySet = new int[indeces];
    }

    public static void main(String[] args){
        Scanner in = new Scanner(System.in);
        ArrayPlusN object=new ArrayPlusN();
        int indeces;
        System.out.print("Enter how many array index/indeces you want: ");
        indeces = in.nextInt();
        object.createArray(indeces);
        object.fillArray();
        object.addElement();
    }

    public void fillArray(){
        Scanner in=new Scanner(System.in);
        for(int i=0;i<arraySet.length;i++){
            System.out.println("Enter element number "+(i+1));
            arraySet[i]=in.nextInt();
        }
        System.out.println("The elements of your array are");
        for(int i:arraySet)
        System.out.print(i+" ");
        System.out.println();
    }

    public void addElement(){
        Scanner in=new Scanner(System.in);
        System.out.println("Enter value to be added to each element");
        int valueAdded = in.nextInt();
        int y=0;
        System.out.println("These are the elements in your array when we added "+ valueAdded + " to each: ");
        for(int i:arraySet){
             arraySet[y]=i+valueAdded;
            System.out.printf("%s ", i+valueAdded);
            y++;
        }
    }
}

arraySet 数组被声明为全局静态数组。所有方法都声明为public void。这些数组在 ma​​in() 方法中按顺序调用 ArrayPlusN 类的对象 object 并完成工作。希望对您有帮助。

关于java - 如何在这个数组操作的Java程序中定义不同的所需方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36250016/

相关文章:

java - hibernate 异常 : Access to DialectResolutionInfo cannot be null when 'hibernate.dialect' not set

java - Hibernate:从未使用过查询缓存

java - RecyclerView 内的分组开关

c++ - 如何通过引用 C++ 中的函数来传递数组?

swift - 如何延迟方法调用,直到存储有关更新当前位置的变量值

dictionary - 内置 map 方法引用

java - 从 Json 到 groovy 代码的转换器?

c - 从字符串中取出 10/3 并在 C 中执行数学运算

javascript - 对对象数组进行排序并取 N 个元素

匿名对象方法的Javadoc