したがって、case ステートメントで変数を使用できないことはわかっています。代替としてかなり効率的なコードを誰かが教えてくれることを願っています。(たとえば、たくさんのifを実行できます)。
状況は、オブジェクト データの配列があり、その配列を反復処理したいということです。配列内の位置は、以下に示すように名前で指定されます (int...ordinal ステートメント)。基本的に、配列の特定のメンバーに「結果」生成オブジェクトを割り当てる必要があります (それらが C_VENT_RATE などの離散データである場合)。これを簡単に実行できる唯一の方法は、if (i.equals(pr_int)) などの一連の if を実行することです。
ArrayList<String[]> rawEKGs = ekgFile.getForMrno( docInfo.getMedicalRecordNumber() );
for (String[] parts : rawEKGs) {
for (int i=0; i< parts.length; i++ )
{
Result result = docInfo.getResult();
boolean process = true;
final int vent_rate = UncEKG.COL_NAMES.C_VENT_RATE.ordinal();
int art_rate = UncEKG.COL_NAMES.C_ART_RATE.ordinal();
int pr_int = UncEKG.COL_NAMES.C_PR_INTERVAL.ordinal();
int qrs_dur = UncEKG.COL_NAMES.C_QRS_DURATION.ordinal();
int qt_qtc = UncEKG.COL_NAMES.C_QT_QTC.ordinal();
int prt = UncEKG.COL_NAMES.C_PRT_AXES.ordinal();
switch(i) {
case : // something
break;
default: process = false;
}