インタフェースTableSwitchInstruction
- すべてのスーパー・インタフェース:
ClassFileElement
,CodeElement
,Instruction
public sealed interface TableSwitchInstruction extends Instruction
Code
属性のcode
配列のtableswitch
命令をモデル化します。 CodeModel
の要素をトラバースするときに、CodeElement
として提供されます。
表スイッチ命令はコンポジットです:
TableSwitchInstruction
(
int lowValue
,
int highValue
,
Label defaultTarget
,
List<SwitchCase> cases
)
class
ファイルから読み取る場合、cases
はデフォルトのターゲットを複製するケースを省略できます。 リストは、caseValue
で昇順でソートされます。
class
ファイルに書き込む場合、表スイッチ・エントリの物理表現に有効な順序は1つのみであるため、cases
リストの順序は問題になりません。 値がlowValue
より小さいかhighValue
より大きいcases
の要素および値が別の要素と重複する要素の処理は指定されません。
- Java Virtual Machine仕様を参照してください:
-
「6.5.tableswitch 表スイッチ」
- 導入されたバージョン:
- 24
- 関連項目:
-
メソッドのサマリー
修飾子と型メソッド説明cases()
スイッチのケースを返します。スイッチのデフォルトのターゲットを返します。int
スイッチのターゲット範囲の上限値(包含)を返します。int
lowValue()
スイッチのターゲット範囲の下限値(包含)を返します。static TableSwitchInstruction
of
(int lowValue, int highValue, Label defaultTarget, List<SwitchCase> cases) 表スイッチ命令を返します。インタフェースjava.lang.classfile.Instructionで宣言されたメソッド
opcode, sizeInBytes
-
メソッドの詳細
-
lowValue
int lowValue()スイッチのターゲット範囲の下限値(包含)を返します。- 戻り値:
- スイッチのターゲット範囲の下限値(包含)
-
highValue
int highValue()スイッチのターゲット範囲の上限値(包含)を返します。- 戻り値:
- スイッチのターゲット範囲の上限値(包含)
-
defaultTarget
-
cases
-
of
static TableSwitchInstruction of(int lowValue, int highValue, Label defaultTarget, List<SwitchCase> cases) 表スイッチ命令を返します。- パラメータ:
lowValue
- スイッチのターゲット範囲の下限値(包含)highValue
- スイッチのターゲット範囲の上限値(包含)defaultTarget
- スイッチのデフォルトのターゲットcases
- スイッチのケース。重複またはバインド外ケース処理が指定されていません- 戻り値:
- 表スイッチ命令
-