當前位置:首頁 » 編程語言 » java數組傳遞

java數組傳遞

發布時間: 2022-11-22 10:09:45

java數組參數如何傳遞

int型的數據是一個常量,存在於一個常量池中,當修改池中的值時,如果產生的新值,在原池中沒有這個值,就會在池中創建一個新的。其實以上過程又創建了新的常量。
java中對於數組,是當作一個對象來看待的,你傳遞的是一個引用,也就是內存地址,在這個過程中,只存在一個對象,並沒有創建新的對象,所有修改的只是這一個對象。
以上純屬我的個人理解。

⑵ Java中set方法傳遞一個數組,用get方法怎麼獲取數組中的內容

package test2;

import java.util.Arrays;

public class test2_test6 {
int[] i;

void setI(int[] i) {
this.i = i;
}

//兩種方法
//第一種,直接列印數組
String getI_value1() {
return Arrays.toString(i);
}

//第二種,循環遍歷
String getI_value2() {
StringBuilder s = new StringBuilder();
for (int i_value : i) {
s.append(i_value);
s.append(" ");
}
return s.toString();
}

public static void main(String[] args) {
int[] Array = {1, 2, 3, 4, 5};
test2_test6 t2_t6 = new test2_test6();
t2_t6.setI(Array);
System.out.println("第一種方法獲取值:");
System.out.println(t2_t6.getI_value1());
System.out.println("第二種方法獲取值:");
System.out.println(t2_t6.getI_value2());
}
}

⑶ java中 數組可以作為形式參數傳遞到調用的方法中嗎要怎麼操作

可以,操作代碼如下:

public class ArrTest{

public static void doTest(String[] args){

for(int i=0;i<args.length;i++){

System.out.println(args[i]);

}

}

public static void main(String[] args){

String[] testArr = {"a","b","c","d"};

ArrTest.doTest(testArr );

}

}

(3)java數組傳遞擴展閱讀:

把數組作為參數傳入一個方法,在該方法中對數組進行一些操作:如果僅僅是插入數據項等一般操作,那麼該操作會影響到數組本身;反之,如調整數組大小、對數組賦值等操作,則對數組本身沒有影響。

例子:

public class Tester {<br data-filtered="filtered">

public static void counter(int count) {<br data-filtered="filtered">

count = 2;<br data-filtered="filtered">

}<br data-filtered="filtered">

<br data-filtered="filtered">

public static void changeA1(int[] ints) {<br data-filtered="filtered">

int[] temp = { 4, 5, 6 };<br data-filtered="filtered">

ints = temp;<br data-filtered="filtered">

}<br data-filtered="filtered">

<br data-filtered="filtered">

public static void changeA2(int[] ints) {<br data-filtered="filtered">

ints[0] = 4;<br data-filtered="filtered">

ints[1] = 5;<br data-filtered="filtered">

ints[2] = 6;<br data-filtered="filtered">

}<br data-filtered="filtered">

<br data-filtered="filtered">

public static void main(String[] args) {<br data-filtered="filtered">

// Output: 1<br data-filtered="filtered">

// 基本數據類型沒有改變。<br data-filtered="filtered">

int count = 1;<br data-filtered="filtered">

counter(count);<br data-filtered="filtered">

System.out.println("count: " + count);<br data-filtered="filtered">

<br data-filtered="filtered">

<br data-filtered="filtered">

int[] ints = { 1, 2, 3 };<br data-filtered="filtered">

<br data-filtered="filtered">

// Output: 1, 2, 3<br data-filtered="filtered">

// 對數組賦值,不會改變原始數組。<br data-filtered="filtered">

changeA1(ints);<br data-filtered="filtered">

for (int i = 0; i < ints.length; i++) {<br data-filtered="filtered">

System.out.print(ints[i] + " ");<br data-filtered="filtered">

}<br data-filtered="filtered">

<br data-filtered="filtered">

// Output: 4, 5, 6<br data-filtered="filtered">

// 可以對數組插入新的數據項。<br data-filtered="filtered">

System.out.println();<br data-filtered="filtered">

changeA2(ints);<br data-filtered="filtered">

for (int i = 0; i < ints.length; i++) {<br data-filtered="filtered">

System.out.print(ints[i] + " ");<br data-filtered="filtered">

}<br data-filtered="filtered">

}<br data-filtered="filtered">

}

⑷ java里數組如何作為參數傳遞給方法,以及如何在方法中返回數組

定義方法的時候可以在參數列表中定義傳入參數的類型 例如
void method( int[] a)
或者使用可變參數
void method(object…obj)
而方法的返回值在方法內使用return定義 同時方法定義中的返回值類型也要同 return後的數據類型一致
例如
public int[] method(){
//代碼塊…
return 數組名;
}
希望能幫到你

⑸ java傳遞int數組到c++

你用哪種方法在java/c++之間通信得?服務介面,JNI?

⑹ java中數組之間的傳值

java中數組之間的傳值,可以使用for循環語句根據下標分別進行賦值,實例如下:

packagecom.qiu.lin.he;

publicclassCeShi{

publicstaticvoidmain(String[]args){

int[]i=newint[]{1,2,3};//第一個int數組
int[]j=newint[3];//等待賦值的第二個int數組
for(intk=0;k<3;k++){
j[k]=i[k];//進行數組之間賦值
System.out.println("數組之間賦值"+j[k]);
}

}

}

運行結果如下:

⑺ java傳遞數組:為什麼傳遞數組能通過傳遞一個數組給另一個方法並修改值後,能得到一個不一樣數組

這屬於傳值傳引用問題

首先一個問題 String str="1";這句話到底做了些什麼事情?
String str聲明一個變數str
"1"劃分一個值為"1"的內存空間
=號,使用變數str引用該內存空間。

理解了這個,再來看你的第二個例子:

int z=9
我們用->來表示「引用」關系
此時z->9,沒錯吧?
fun(z)將z的引用傳遞給該方法,參數為Int x
則,z->9,且x->9
然後x=10則是進行這一步:x->10
此時z的引用並沒有改變啊
所以 z還是保持9

再來看第一個例子
int[],在內存里並不存在這么一塊單獨的空間用於存放數組
它的做法是,劃分出和數組等量的空間出來,然後使用一個int[]歸納全部的空間
於是
你對int[]的傳遞fun(temp)其實是傳遞這個int[]引用
然後 取出來的int[0]自然是temp[0]
你對x[0]的操作x[0]=6並不是把x[0]原來引用的空間裡面的值替換成了6
而是x[0]不再引用1,轉而引用6

所以 你可以看到值發生了改變

⑻ java數組的傳遞

按照C的理解是傳地址。Java的說法是傳引用。

Java中基本數據類型是傳值的。如boolean,byte,char,short,int,long,float,double。
Java中引用數據類型(包括數組,包括基本類型的數組)是傳引用的。


int[] is = new int[]{1,2,3};
int[] is2 = is;
is2[0] = 10;
那麼is[0]也跟著變化。

⑼ JAVA程序中數組傳遞給參數的問題,【代碼1】【代碼2】如何填寫!

占個位置。。。。
希望選我為最佳答案,謝謝!!!

可根據提示,將對應內容填入即可
第一個地方:computer調用average(double x[])方法,將數組a傳遞給參數x
填入:computer.average(a);
第二個地方:computer調用average(double x[])方法,將數組b傳遞給參數x
填入:computer.average(b);

說明:
就是調用類下的方法,傳入說明的中參數,就可以返回需要的值!

⑽ JAVA函數傳遞數組

Students類加一個Student[]類型的屬性和構造函數
Student[] stus;
Students(Student[] stus)
{
this.stus = stus;
}就可以了

熱點內容
ubuntuphpmcrypt 發布:2025-01-16 08:26:46 瀏覽:428
安卓圖片如何添加蘋果的水墨印 發布:2025-01-16 08:18:12 瀏覽:730
fmp腳本 發布:2025-01-16 08:12:23 瀏覽:230
nagios自定義腳本 發布:2025-01-16 08:09:52 瀏覽:364
安卓為什麼下不了方舟生存進化 發布:2025-01-16 08:02:32 瀏覽:194
如何登錄男朋友的微信密碼 發布:2025-01-16 07:41:14 瀏覽:194
寶駿解壓流程 發布:2025-01-16 07:35:35 瀏覽:2
兩匹壓縮機多少錢 發布:2025-01-16 07:29:19 瀏覽:635
個人pc搭建游戲伺服器 發布:2025-01-16 07:27:09 瀏覽:970
存儲剩餘照片 發布:2025-01-16 07:25:01 瀏覽:50