日食で非常に奇妙な問題が発生しています。次のコードを見てください。
public void addItem(ArrayList<Object> objectLists)  {
        SHorizontalLayout hLayout = Cf.hLayout();
        hLayout.setSizeFull();
        hLayout.setHeight(rowHeight, UNITS_PIXELS);
        if(rowCount % 2 != 0 && rowCount != 0)  {
            hLayout.addStyleName("row-even");
        } else  {
            hLayout.addStyleName("row-odd");            
        }
        for(Object object : objectLists)    {
            if(object instanceof String || object instanceof Integer)   {
                hLayout.addComponent(Cf.h1(object.toString()), Alignment.MIDDLE_CENTER);
                columnList.get(0).addComponent(hLayout);                
            } else if(object instanceof ChipSlotGrid)   {
                hLayout.addComponent((ChipSlotGrid)object, Alignment.MIDDLE_CENTER);
                columnList.get(1).addComponent(hLayout);            
            }
        }
        rowCount++;
    }
for ループでは、オブジェクトのインスタンス タイプがチェックされ、それに応じてレイアウトに追加されます。
私が経験している問題は、オブジェクトがタイプの場合、 if ステートメントIntegerに入り、ステートメント内の2つの行を実行し、ループ内の新しいサイクルを離れる代わりに、elseステートメントにジャンプして行を実行することです(else ステートメントの最初の行をスキップします)。columnList.get(1).addComponent(hLayout)
すでに if ステートメントに入っているにもかかわらず、else ステートメントの一部も実行しています。これは、開発中のアプリケーションでその製品を見て、コードをデバッグしているときにプログラムで見たので、これを知っています。
問題を最小のコンポーネントに分解する場合:
i = 0;    
if(true)   {
   i++;
} else   {
   i++;
}
System.out.println(i);
私の問題では、印刷物は次のようになります:2
私はここで途方に暮れています。IDE に何か問題がありますか? 誰かが以前にこれに遭遇したことがあり、何が間違っているのか考えていますか?
編集: ステートメントを切り替えてみましたが、パターンが繰り返されると結論付けることができます。
for(Object object : objectLists)    {
        if(object instanceof ChipSlotGrid)  {
            hLayout.addComponent((ChipSlotGrid)object, Alignment.MIDDLE_CENTER);
            columnList.get(1).addComponent(hLayout);                
        } else if(object instanceof String || object instanceof Integer)    {
                hLayout.addComponent(Cf.h1(object.toString()), Alignment.MIDDLE_CENTER);
                columnList.get(0).addComponent(hLayout);
        }
    }
編集 2: Jon の要求から、ステートメントにロギングを追加しました。
for(Object object : objectLists)    {
            if(object instanceof ChipSlotGrid)  {
                log.info("Inside if");
                hLayout.addComponent((ChipSlotGrid)object, Alignment.MIDDLE_CENTER);
                columnList.get(1).addComponent(hLayout);
            } else if(object instanceof String || object instanceof Integer)    {
                    log.info("Inside else");
                    hLayout.addComponent(Cf.h1(object.toString()), Alignment.MIDDLE_CENTER);
                    columnList.get(0).addComponent(hLayout);
            }
        }
if文からelse文にジャンプすると、else文のログもスキップされます。(これがあなたが要求したテストだったことを願っています)