[語法] 請問回傳SET 利用參數使用陣列方法

看板java作者 (陽光老哥 fighting!!!)時間4年前 (2020/03/16 13:23), 4年前編輯推噓2(2013)
留言15則, 5人參與, 4年前最新討論串1/1
請問各位前輩寫了這個方法 但我呼叫這個equi的方法但卻是錯誤 equi(a[]);這行出錯 不知道要怎麼呼叫我寫的這個方法 麻煩指導一下 感謝 public static void main(String[] args) { int [] a= {-1,1,-2,2,-1,0,0}; equi(a[]); } public HashSet<Integer> equi(int b[]) { ... HashSet<Integer> ans = new HashSet<Integer>(); for(int i=1;i<b.length;i++) { for(int j=b.length-1;j>i;j--) { right += b[j]; } for(int k=0;k<i;k++) { left += b[k]; } ... ... ... return ans; } } -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 101.15.221.40 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/java/M.1584336224.A.3C4.html ※ 編輯: akk98 (101.15.221.40 臺灣), 03/16/2020 13:24:25

03/16 13:34, 4年前 , 1F
equi(a);
03/16 13:34, 1F

03/16 15:44, 4年前 , 2F
a才是variable, a[]不是
03/16 15:44, 2F

03/16 16:04, 4年前 , 3F
喔 奇怪我怎麼記得我試過了
03/16 16:04, 3F

03/16 16:04, 4年前 , 4F
謝謝兩位大大 感恩
03/16 16:04, 4F

03/16 16:10, 4年前 , 5F
不過這是甚麼原理
03/16 16:10, 5F

03/16 16:11, 4年前 , 6F
明明參數給的就是equi(int b[])
03/16 16:11, 6F

03/16 16:31, 4年前 , 7F
a 是名稱, int[] 是型態
03/16 16:31, 7F

03/16 16:32, 4年前 , 8F
傳入時不用帶入變數型態
03/16 16:32, 8F

03/16 16:33, 4年前 , 9F
String test = "123"; 你傳入方法時都會傳String test?
03/16 16:33, 9F

03/16 17:41, 4年前 , 10F
感恩樓上 那我這樣解釋呢? int[] a 這樣是不是也可以解釋
03/16 17:41, 10F

03/16 17:41, 4年前 , 11F
XD
03/16 17:41, 11F

03/16 18:07, 4年前 , 12F
因為 int b[] 是錯的,那是C-style
03/16 18:07, 12F

03/16 18:18, 4年前 , 13F
標準的Java-style應該是 int[] b,int[] 就是type
03/16 18:18, 13F

03/16 18:22, 4年前 , 14F
雖然compiler有相容,但語意上Java的int[]就是一個class
03/16 18:22, 14F

03/27 19:52, 4年前 , 15F
謝謝各位大大 感恩
03/27 19:52, 15F
文章代碼(AID): #1URmrWF4 (java)
文章代碼(AID): #1URmrWF4 (java)