導航:首頁 > 編程語言 > java參數不確定

java參數不確定

發布時間:2022-05-18 09:04:19

java中為什麼參數傳遞不正確

①int pic=null這一句有錯誤。基本數據類型應該賦值為0,引用數據類型才被賦值為null。

②private card ic1 = new card("你好");這一句。你有對應的構造函數么?系統默認的是無參數的,你自己寫的是有四個參數的。

③你的構造函數怎麼是void類型?
構造方法是一種特殊的方法,具有以下特點。
(1)構造方法的方法名必須與類名相同。
(2)構造方法沒有返回類型,也不能定義為void,在方法名前面不聲明方法類型。
(3)構造方法的主要作用是完成對象的初始化工作,它能夠把定義對象時的參數傳給對象的域。
(4)一個類可以定義多個構造方法,如果在定義類時沒有定義構造方法,則編譯系統會自動插入一個無參數的默認構造器,這個構造器不執行任何代碼。
(5)構造方法可以重載,以參數的個數,類型,順序。

⑵ java返回值類型不確定

你可以定義一個空的介面或者抽象類,讓teacher和student都實現或者繼承這個介面或者抽象類,在返回值的地方寫介面或者抽象類的名字。簡單點說上轉型或者介面回調。

⑶ java裡面聲明方法裡面的參數可以不確定數目嗎

可以,這就是java的不定長參數,下面進行簡要介紹:
先看兩個簡單的例子,來感受一下Java的不定長度參數
第一個例子:
public class VariArgs {
public static void main(String[] args) {
test();
test("aaa");
test("aaa", "bbb");
test("aaa", "bbb", "ccc");
}
public static void test(String... args) {
System.out.println(args.getClass());
for (String arg : args) {
System.out.println(arg);
}
}
}
第二個例子:
public class VariArgs {
public static void main(String[] args) {
test("aaa");
test("aaa", "bbb");
test("aaa", "bbb", "ccc");
}
public static void test(String arg, String... args) {
System.out.println(arg);
System.out.println("----------------");
for (String s : args) {
System.out.println(s);
}
}
}

從上面可以看出,如果一個方法的參數定為不定參數的話,這個參數可以根據參數個數動態生成一個數組,然後傳入方法執行。
不過,不定參數有兩個規定:第一,方法的參數列表中最多隻有一個不定長度的參數;第二,就是不定長度的數組的位置必須是最後一個參數。不然不能通過編譯。
對於第一個規定,是因為如果有多於一個不定長度的參數,當真正調用這個方法的時候,JVM、將不知道前面的不定長度參數有多長, 下一個參數是從哪裡開始.
對於第二個參數也是一樣,編譯器不知道不定長度參數的長度,無法確定從哪裡開始下一個參數。

⑷ java中怎樣使用個數不確定的參數

public void println(String...strs){
}

⑸ JAVA方法的參數類型是不確定的該如何處理

有兩種方式解決這個問題:
1、使用Object類型,因為所有類型的基類都是Object,所有類型都可以用Object表示,缺點是在使用時需要對類型進行強轉,代碼維護性比較差。
2、使用泛型,這是推薦做法,使用泛型讓我們在方法調用時再指定類型,不需要做類型轉換等操作。

⑹ java可以定義參數類型不確定的函數嗎

java可以定義參數類型不確定的函數。
java 函數定義不定參數方式:
輸入: public void showIconsInTitleBar(View... icons) {
if (icons.length == 0) {
return;
}

for (int i = 0; i < icons.length; i++) {
icons[i].setVisibility(View.VISIBLE);
}
}

調用此方法可以傳入任意多個view。

⑺ JAVA里有沒有不固定參數個數的構造函數

JDK1.5以上版本增加了不固定參數的定義方法,語法如下:public Test1(String... strs) {
for (int i = 0; i < strs.length; i++) {
System.out.println(strs[i]);
}
}

⑻ 在Java中數組作為方法的參數的一個問題。

  1. public static int add(int[] a)和public static int add(int a[])中的參數定義是相同的,都表示int類型的不定長數組,即數組的長度不同。

  2. ublic static int add(int...a)中的int...a在java中稱作可變參數,意思是這個add方法的參數是不固定的.相關特性如下,

  3. Java1.5增加了新特性:可變參數:適用於參數個數不確定,類型確定的情況,java把可變參數當做數組處理。注意:可變參數必須位於最後一項。當可變參數個數多餘一個時,必將有一個不是最後一項,所以只支持有一個可變參數。因為參數個數不定,所以當其後邊還有相同類型參數時,java無法區分傳入的參數屬於前一個可變參數還是後邊的參數,所以只能讓可變參數位於最後一項。

  4. 可變參數的特點:

    (1)只能出現在參數列表的最後;

    (2)...位於變數類型和變數名之間,前後有無空格都可以;

    (3)調用可變參數的方法時,編譯器為該可變參數隱含創建一個數組,在方法體中以數組的形式訪問可變參數。

  5. publicclassVarable{
    publicstaticvoidmain(String[]args){
    System.out.println(add(2,3));
    System.out.println(add(2,3,5));
    }
    publicstaticintadd(intx,int...args){
    intsum=x;
    for(inti=0;i<args.length;i++){
    sum+=args[i];
    }
    returnsum;
    }
  6. 可以這樣認為,可變參數只是數組的一種增強型,適用於工具類的封裝,比如java的層Dbutl工具類,使用PreparedStatement進行預編譯sql語句時,由於佔位符的數量未知,我們就可以使用可變參數來設置佔位符的數量
閱讀全文

與java參數不確定相關的資料

熱點內容
漢語命令形 瀏覽:193
ACG官網下載的游戲怎麼解壓 瀏覽:963
stata交叉項命令 瀏覽:470
程序員老公燙頭 瀏覽:692
伺服器文件地址格式 瀏覽:131
securecrtandroid 瀏覽:176
短字元串壓縮 瀏覽:863
u盤插入後顯示加密格式化 瀏覽:944
我的世界怎麼用命令方塊獲得超級武器 瀏覽:382
狗語翻譯器app鏈接怎麼下 瀏覽:905
選擇排序演算法的流程圖 瀏覽:881
如何對文件夾開啟共享 瀏覽:527
常用的磁碟調度演算法 瀏覽:662
怎麼用返利app返利 瀏覽:127
java代碼快速 瀏覽:243
單片機左移右移後是補1還是0 瀏覽:599
湛江一號命令 瀏覽:333
導出命令行 瀏覽:274
C和php交互 瀏覽:600
蘋果手機里的通訊錄如何導入安卓手機 瀏覽:170