導航:首頁 > 研究方法 > java方法中傳入數組什麼意思

java方法中傳入數組什麼意思

發布時間:2022-04-23 19:36:24

Ⅰ 關於java通過方法調用傳遞一個數組的疑問

你好,我把答案寫在注釋上了。
public class JavaDemo10 {
public static void main(String args[]) {
//java的基本思想一切皆為對象 下面的語句定義一個整型數組對象,長度為10
int i[] = new int[10];
// 調用init是為了初始化數組對象,
//括弧里輸入i是因為你寫的init方法接收一個整型數組的參數
//i的值你可以使用System.out.println(i);進行觀察,其實就是它在內存中的地址
init(i);
// 調用print是為了按照你要的方式輸出數組中的元素,
//括弧里輸入i是因為你寫的print方法接收一個整型數組的參數
//i的值你可以使用System.out.println(i);進行觀察,其實就是它在內存中的地址
print(i);// 我不明折,為什麼調用print方法,為什麼在括弧里入輸i,而且i的值是多少
}
public static void init(int x[]) // 因為x[]只是一個形參,你傳遞的是實參,只要類型一樣就能接收
{
for (int y = 0; y < x.length; y++) {
x[y] = y + 1;
}
}

public static void print(int x[])//因為x[]只是一個形參,你傳遞的是實參,只要類型一樣就能接收
{
for (int y = 0; y < x.length; y++) {
System.out.println("數據i[" + y + "]=" + x[y]);
}
}
}

Ⅱ java中數組是怎麼作為函數參數進行傳遞的

舉個例子和你說。
傳遞數組參數:
1. 傳遞數組
要傳遞數組到方法里,只要指明傳入的參數是一個數組即可。
例:
public class ArrayDemo //定義主類
{
public static void main(String args[])
{
int a[]={8,23,7,6,9,23}; //定義一維數組
ArrayDemo min=new ArrayDemo (); //創建對象
min.arrayMin(a); //將一維數組a傳入least()方法
}
public void arrayMin(int array[]) //參數array[]接受一維整形數組
{
int temp=array[0];
for(int i=0;i<array.length;i++)
if(temp>array[i])
temp=array[i];
System.out.println("最小的數為:"+temp);
}
}
從該例中可以看出,如果要將數組傳遞到方法里,只需在方法名後的括弧內寫上數組的名即可。二維數組的傳遞與一維數組相似,在需在方法里聲明傳入的參數是一個二維數組。

Ⅲ JAVA調用函數傳入數組問題

【這段程序總共就3個方法】:
void main(string args[]);//主方法
void pp(int x[]);//列印的方法
int[] init()/;/給int數組賦值的方法
【調用關系】:
void main(string args[])調用int[] init(),並把init()返回來的int數組作為參數傳入pp(int x[])中,pp()負責列印出傳進來的int數組。
【int[] init()分析】:
public static int[] init(){//前面加int[]說明這個方法會返回一個int數組
int x[]=new int[10];//申請並分配空間
for(int y=0; y<x.length; y++){//從1到10循環賦值給int數組
x[y] = y+1;
}
return x;//return後面跟的是返回的值,x就是一個int數組
}
【void pp(int x[])分析】:
public static void pp(int x[]){//前面加void說明這個方法沒有返回值
for(int y=0;y<x.length;y++){//循環列印傳進來的int數組
system.out.println("數組["+y+"]= "+x[y]);
}
}
【void main(string args[])分析】:
public static void main(string args[]){//主函數
int i[]=init();//調用init()方法,把返回的int數組賦值給i[]
pp(i);//把i(int數組)傳入pp()中,列印出i數組
}
================================================
剛開始學編程吧,希望以上的分析對你的理解有所幫助
================================================

Ⅳ JAVA方法中參數為數組的情況下,為什麼是傳值參數

1.對象就是傳引用

2.原始類型就是傳值

3.String等immutable類型因為沒有提供自身修改的函數,每次操作都是新生成一個對象,所以要特殊對待。可以認為是傳值。


Java數組視頻教程:

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

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

Ⅵ 求解java中「把數組傳遞給方法」的一個概念性問題

我給你用大白話說吧。
當數組傳遞給參數時,傳遞的是這個數組的地址的值。這時形參的值(也就是數組的地址)同數組一樣都指向存儲數組的內存。所以你對形參進行操作想當於直接操作實參。
其實你要是懂他們在內存中的存儲方式就好懂多了。當新建一個數組時,電腦是不分配內存的,只有當初始化了之後才分配內存。你所用的(比如int[ ] array = {1,2,3})數組名array其實它代表的是一個地址,這個地址指向{1,2,3}。把array傳遞給了形參(比如max(int[ ] m,),這時形參m也是一個地址,同樣指向{1,2.3}。這個明白了嗎?

Ⅶ 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傳入一個數組和返回一個數組

importjava.util.Arrays;

classEgg
{
publicString[]names;

publicString[]getOdd()
{
String[]arr=newString[0];
for(inti=1;i<names.length;i+=2)
{
String[]dest=newString[arr.length+1];
System.array(arr,0,dest,0,arr.length);
dest[dest.length-1]=names[i];
arr=dest;
}
returnarr;
}

publicString[]getEven()
{
String[]arr=newString[0];
for(inti=0;i<names.length;i+=2)
{
String[]dest=newString[arr.length+1];
System.array(arr,0,dest,0,arr.length);
dest[dest.length-1]=names[i];
arr=dest;
}
returnarr;
}
}

publicclassMain
{
publicstaticvoidmain(String[]args)
{
Eggegg=newEgg();
egg.names=newString[]{"yugi","kaiba","joey","kensou","yamazaki"};
System.out.println(Arrays.toString(egg.getOdd()));
System.out.println(Arrays.toString(egg.getEven()));
}
}

Ⅸ 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中 數組可以作為形式參數傳遞到調用的方法中嗎要怎麼操作

可以,操作代碼如下:

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 );

}

}

(10)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方法中傳入數組什麼意思相關的資料

熱點內容
釘釘快速整理方法 瀏覽:70
破壁機榨汁的方法視頻 瀏覽:386
嗅覺失靈哪裡治療方法 瀏覽:745
沖弧絲的正確使用方法 瀏覽:960
去哪裡找馬桶堵疏通的方法 瀏覽:216
山上裝老鼠籠方法視頻 瀏覽:800
怎麼解決生氣的方法 瀏覽:824
吊機電容安裝方法 瀏覽:932
如何除頭皮蟎蟲最有效方法 瀏覽:886
鑒別碳酸氫鈉和碳酸鉀兩種方法 瀏覽:698
間隙尺的使用方法 瀏覽:145
tdm測定最常用方法 瀏覽:677
可下載圖片的視頻製作方法 瀏覽:462
桃子套袋什麼方法快 瀏覽:733
青黴素產生抗體有解決方法嗎 瀏覽:208
小瓊的訓練方法 瀏覽:688
用什麼方法給圖形分類 瀏覽:696
水質監測如何選擇測量氨氮的方法 瀏覽:161
提高發酵產量的方法有哪些 瀏覽:382
筏桿安裝方法 瀏覽:102