调用函数会更新数组吗?

时间:2018-05-10 11:35:52

标签: java arrays

如果我将数组发送到某个函数,例如:

library(tidyverse)
library(stringr)

#want to calculate number of columns needed and the sequence 

x<-str_count(df$column)

results<-df%>%separate(column,x,",")
例如

(假设我写了一些内容,即使我写了一些类)

public void arrayManipulate(Someclass [] arr){
arr[0] = 2
}

它会打印什么? 0作为数组中的deadult值,或2(我想知道调用该函数是否会更新数组,或者我应该返回该函数中的数组并执行arr = this.arrayManipulate(arr))

提前谢谢 乔治

1 个答案:

答案 0 :(得分:0)

如果你的代码是编译的,并且在这两个地方都将数组声明为int [],那么答案就是:

是的,它会更新阵列。虽然如果在arr方法中重新分配arrayManipulate对象不会改变,但修改其中的属性/元素对于调用者是可见的,因为更新的对象是相同的。

所以打印的数字是2