亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Java的Array indexOf在哪里?

Java的Array indexOf在哪里?

慕勒3428872 2019-07-24 19:16:17
Java的Array indexOf在哪里?我必須遺漏一些非常明顯的東西,但我已經遍地搜索過,找不到這種方法。
查看完整描述

3 回答

?
小怪獸愛吃肉

TA貢獻1852條經驗 獲得超1個贊

使用Arrays實用程序類有兩種方法可以實現此目的。

如果數組未排序且不是基元數組:

java.util.Arrays.asList(theArray).indexOf(o)

如果數組基元并且沒有排序,那么應該使用其他答案之一提供的解決方案,例如KeremBaydo?anAndrew McKinlayMishax。即使theArray是原始代碼(可能發出警告),上面的代碼也會編譯,但是你會得到完全錯誤的結果。

如果數組已排序,您可以使用二進制搜索來獲得性能:

java.util.Arrays.binarySearch(theArray, o)


查看完整回答
反對 回復 2019-07-24
?
不負相思意

TA貢獻1777條經驗 獲得超10個贊

數組沒有indexOf()方法。

也許這個Apache Commons Lang ArrayUtils方法就是你想要的

import org.apache.commons.lang3.ArrayUtils;String[] colours = { "Red", "Orange", "Yellow", "Green" };int indexOfYellow = ArrayUtils.indexOf(colours, "Yellow");


查看完整回答
反對 回復 2019-07-24
?
小唯快跑啊

TA貢獻1863條經驗 獲得超2個贊

空無一人。要么使用java.util.List*,要么你可以寫自己的indexOf()

public static <T> int indexOf(T needle, T[] haystack){
    for (int i=0; i<haystack.length; i++)
    {
        if (haystack[i] != null && haystack[i].equals(needle)
            || needle == null && haystack[i] == null) return i;
    }
    return -1;}

*您可以使用您的陣列制作一個 Arrays#asList()


查看完整回答
反對 回復 2019-07-24
  • 3 回答
  • 0 關注
  • 3199 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號