SwitchBootstraps.TypeSwitch 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
連結 invokedynamic 一個呼叫網站,該網站在參考型目標上切換。
[Android.Runtime.Register("typeSwitch", "(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;", "", ApiSince=36)]
public static Java.Lang.Invoke.CallSite? TypeSwitch(Java.Lang.Invoke.MethodHandles.Lookup? lookup, string? invocationName, Java.Lang.Invoke.MethodType? invocationType, params Java.Lang.Object[]? labels);
[<Android.Runtime.Register("typeSwitch", "(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;", "", ApiSince=36)>]
static member TypeSwitch : Java.Lang.Invoke.MethodHandles.Lookup * string * Java.Lang.Invoke.MethodType * Java.Lang.Object[] -> Java.Lang.Invoke.CallSite
參數
- lookup
- MethodHandles.Lookup
查詢上下文與來電者的無障礙權限。
- invocationName
- String
閑置。
- invocationType
- MethodType
呼叫站點調用類型包含參考型參數、參數 int 型態及 int 回傳型別。
傳回
呼叫站點,回傳 -1 目標 null 、重啟索引後第一個匹配標籤的索引,或 labels.Length 當無標籤匹配時。
- 屬性
例外狀況
元素 labels 是null;invocationType不接受參考型別,且 int 和 回傳 ;int或標籤不是 String、 、 Int32Class或 enum-description 值。
一個參數為 null。
備註
回傳呼叫網站為目標null產生-1。 對於非空目標,它會從重新啟動索引搜尋,並回傳第一個匹配的標籤索引,或 labels.Length 當沒有標籤匹配時。 重新啟動索引必須從零到 labels.Length包含 ;否則,呼叫呼叫站會拋 IndexOutOfBoundsException出 。
的 java.lang.runtime.SwitchBootstraps.typeSwitchJava 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。