Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
尺码在哪里';s值(Java)_Java_Arrays_Class - Fatal编程技术网

尺码在哪里';s值(Java)

尺码在哪里';s值(Java),java,arrays,class,Java,Arrays,Class,“int size”的值从何而来?我阅读了1000次代码,但我仍然不知道“大小”是在哪里初始化的,我是java新手,但我不理解这一点,代码运行良好,任何帮助都很好。提前谢谢 public class Study { public static void main(String[] args) { Queue queue = new Queue(); for (int i = 0; i <= 20; i++) queue.enqueue(i); wh

“int size”的值从何而来?我阅读了1000次代码,但我仍然不知道“大小”是在哪里初始化的,我是java新手,但我不理解这一点,代码运行良好,任何帮助都很好。提前谢谢

public class Study {
  public static void main(String[] args) {
    Queue queue = new Queue();
    for (int i = 0; i <= 20; i++)
      queue.enqueue(i);

    while (!queue.empty())
      System.out.print(queue.dequeue() + " ");
  }
}

class Queue {
  private int[] elements;
  private int size;

  public Queue() {
    elements = new int[8];
  }

  public void enqueue(int value) {
    if (size >= elements.length) {
      int[] temp = new int[elements.length * 2];
      System.arraycopy(elements, 0, temp, 0, elements.length);
      System.out.println(elements.length);
      elements = temp;
    }

    elements[size++] = value;
  }

  public int dequeue() {
    int v = elements[0];

    // Shift all elements in the array left
    for (int i = 0; i < size - 1; i++) {
      elements[i] = elements[i + 1];
    }

    size--;

    return v;
  }

  public boolean empty() {
    return size == 0;
  }

  public int getSize() {
    return size;
  }
}
公共课堂学习{
公共静态void main(字符串[]args){
队列=新队列();
for(int i=0;i=elements.length){
int[]temp=新int[elements.length*2];
系统阵列复制(元素,0,温度,0,元素长度);
System.out.println(元素长度);
元素=温度;
}
元素[大小++]=值;
}
公共整数出列(){
int v=元素[0];
//将数组中的所有元素向左移动
对于(int i=0;i
size++
等于语句
size=size+1
,与
size--
相同的是
size=size-1
size++
等于语句
size=size+1
,对于
size--
也一样,它的
size=size-1
对于
int
,默认值是
0

size++
size--
正在对其值进行更改


有关更多信息,请参阅:

对于
int
,默认值为
0

size++
size--
正在对其值进行更改

有关更多信息,请参阅:

如果您没有提供默认值,编译器将为所有实例变量分配一个默认值。 摘自

默认值将为零或null,具体取决于数据类型

该链接还有一个网格,告诉您所有数据类型的默认值

局部变量是在方法内部使用的变量:

编译器从不将默认值分配给未初始化的本地 变量如果无法在声明局部变量的位置初始化它,请确保在尝试使用它之前为其赋值。访问未初始化的局部变量将导致编译时错误

如果您没有提供默认值,编译器将为所有实例变量分配一个默认值。 摘自

默认值将为零或null,具体取决于数据类型

该链接还有一个网格,告诉您所有数据类型的默认值

局部变量是在方法内部使用的变量:

编译器从不将默认值分配给未初始化的本地 变量如果无法在声明局部变量的位置初始化它,请确保在尝试使用它之前为其赋值。访问未初始化的局部变量将导致编译时错误


size++
size--
是,但您需要值来增加或减少它,对吗?我知道它不是自动设置的。您可以在上找到有关变量初始化的信息。我知道它不是自动设置的。
0
size
在创建
Queue
时自动初始化为
0
size++
size--
是的,但您需要值来增加或减少它,对吗?我知道它不是自动设置的。您可以在上找到有关变量初始化的信息。我知道它不是自动设置的。
0
size
在创建
Queue
时自动初始化为
0
。您可能想阅读以下内容:您可能想阅读以下内容: