java數組參數
1. 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);
}
}
從該例中可以看出,如果要將數組傳遞到方法里,只需在方法名後的括弧內寫上數組的名即可。二維數組的傳遞與一維數組相似,在需在方法里聲明傳入的參數是一個二維數組。
2. java里數組如何作為參數傳遞給方法,以及如何在方法中返回數組
定義方法的時候可以在參數列表中定義傳入參數的類型 例如
void method( int[] a)
或者使用可變參數
void method(object…obj)
而方法的返回值在方法內使用return定義 同時方法定義中的返回值類型也要同 return後的數據類型一致
例如
public int[] method(){
//代碼塊…
return 數組名;
}
希望能幫到你
3. javaSE中方法中的:數組作為參數怎麼辦
int minValue = 1000;
int maxValue=1;
for(var i=0;i<nums.length;i++){
minValue = nums[i]<minValue?nums[i]:minValue;
maxValue= nums[i]>minValue?nums[i]:maxValue;
}
System.out.println("最大數"+maxValue+",最小數"+minValue);
隨便打出來的,思路就是這樣。
4. Java對象數組類型的參數,太難懂了。
package ch14;
import java.util.*;
import ch11.sd; ★為什麼要引用這個類?
//這個是多餘的,沒有必要,估計是引入多了,對運行沒有影響的,
public class TestCal {
public static void main(String[] args) {
CalScore calScore=new CalScore();
Scanner input=new Scanner(System.in);
Student[] stus=new Student[5]; ★為什麼這個數組類型是Student??
//因為你要生成的是Student類型的數組,此時數組裡面每個元素為null
for(int i=0;i<stus.length;i++){
stus[i]=new Student(); ★為什麼每次循環都需要實例化??
//java規定,所有對象使用前必須實例化,這里是分配內存給數組第i個元素,然後你就可以對數組元素操作了
System.out.println("請輸入身高");
stus[i].hegiht=input.nextDouble(); ★為什麼這個數組stus[i]後面調用了height?
//這個是給stus[i]裡面的成員變數height賦值,一般不推薦這樣寫
}
System.out.println("平均身高是:"+calScore.cal(stus));
}
}
5. java中調用參數為數組的方法
importjava.util.Scanner;
publicclassCustomerBiz{
Customer[]cus=newCustomer[30];
Scannerscan;
publicvoidadd(){
for(inti=0;i<2;i++){
scan=newScanner(System.in);
Customerc=newCustomer();
System.out.print("請輸入客戶姓名:");
c.Names=scan.next();
System.out.print("請輸入客戶年齡:");
c.years=scan.nextInt();
System.out.print("請輸入是否會員:(true/false)");
c.vips=scan.hasNext();
cus[i]=c;
}
}
publicvoidshowCus(Customer[]cus){
CustomerBizshow=newCustomerBiz();
for(inti=0;i<2;i++){
System.out.println(cus[i].Names);
}
}
publicstaticvoidmain(String[]args){
CustomerBizc=newCustomerBiz();
c.add();
c.showCus(c.cus);
}
}
classCustomer{
StringNames;
intyears;
booleanvips;
}
是這個意思不
6. java數組參數如何傳遞
int型的數據是一個常量,存在於一個常量池中,當修改池中的值時,如果產生的新值,在原池中沒有這個值,就會在池中創建一個新的。其實以上過程又創建了新的常量。
java中對於數組,是當作一個對象來看待的,你傳遞的是一個引用,也就是內存地址,在這個過程中,只存在一個對象,並沒有創建新的對象,所有修改的只是這一個對象。
以上純屬我的個人理解。
7. java函數中怎麼用數組做參數
String[] args 這個字元串數組是保存運行main函數時輸入的參數的,例如main函數所在的類名為test 那麼你在cmd運行 java test a b c 時,args[0] = a ,args[1]=b, args[2]=c 你就可以在你的程序中調用你輸入的這些變數了。
(1)args[]不就是那個字元串This is a simple Java program嘛!
-------完全不是的,理解不對。運行的時候加個參數,比如 java test XX。然後在main函數裡面加這段話:System.out.println("arg is"+args[0]),然後看看輸出是不是這個:
This is a simple Java program
arg is XX
總結:不帶String args[]的main函數和帶String args[]的main函數,本質上已經不是同一個函數了,java 本身不存在不帶String args[]的main函數。
8. 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 );
}
}
(8)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">
}