JAVA方法和返回值/公共变量(基础)
我有点迷路了,对这些基本的JAVA东西感到困惑
假设我想要一个为数组赋值的方法,并且能够在一定程度上返回/记住赋值的数量,每个值分别取决于索引,整个赋值数组都是一个整体,这样我就能够在其他方法中使用这些信息
以下是代码:
public class ADT {
public int i;
public int queue[] = new int[100];
public int Initialize(int n){
for(i=1; i<=8; i++){
queue[i]=(i/4 + 10/i)*i;
System.out.println(queue[i]);}
//public getI(int i) {this.i=i;}
return queue[n];}
public int getI() {
return i;}
public void main2() {
ADT class2 = new ADT();
class2.Initialize(3);
ADT class3 = new ADT();
class3.getI(); // DOESN'T RETURN 8
System.out.println();
System.out.println(i); // DOESN'T WORK (0)
}
public static void main(String[] args) {
ADT class1 = new ADT();
class1.main2();}}
换句话说,我希望能够从任何方法自由地使用这个数组进行操作,但使用当前的code,我可以通过调用Initialize(x)来访问单独的索引值,但要打印出整个数组,我只能使用“for loop”,即使这样,我也需要访问“I”(可以在后面的代码阶段通过scanner进行初始化,所以不要假设它是常量),以了解数组中有多少个值已被初始化,但我不能返回它,因为我已经返回了数组[n],而且我不能直接调用它,(尽管它是公共变量)当我变为0时(旧值8消失),就像试图直接调用队列[3]一样,它不会给我所需的值。但是,如果公共变量在方法完成后变为零,那又有什么意义呢?在我的书中,如果我运行改变某个公共变量值的方法,那么当我从另一个方法调用该变量时,改变的值应该保持不变。然而,JAVA中的逻辑似乎有所不同
共 (0) 个答案