私はColorTypeのオブジェクトを含む配列を持っており、これらのオブジェクトはsalaryCodeを持っているので、私がやろうとしているのは、まず配列をarrayListとして作成したいということです。次に、salaryCodeと同じsalaryCodeを持つオブジェクトに基づいて短くする必要があります別のarrayListに追加され、その配列リストはハッシュマップに追加する必要があります。これを解決するのを手伝ってください..事前に感謝します
私はサンプルコードを持っています...
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import ColorType;
public class test {
public static void main(String[] args) {
List<ColorType> sortColorList = new ArrayList<ColorType>();
ColorType colorType = new ColorType();
colorType.setNRFColorSubFamilyCode("11");
ColorType colorType1 = new ColorType();
colorType1.setNRFColorSubFamilyCode("11");
ColorType colorType2 = new ColorType();
colorType2.setNRFColorSubFamilyCode("11");
ColorType colorType3 = new ColorType();
colorType3.setNRFColorSubFamilyCode("11");
ColorType colorType4 = new ColorType();
colorType4.setNRFColorSubFamilyCode("12");
ColorType colorType5 = new ColorType();
colorType5.setNRFColorSubFamilyCode("12");
ColorType colorType6 = new ColorType();
colorType6.setNRFColorSubFamilyCode("13");
ColorType colorType7 = new ColorType();
colorType7.setNRFColorSubFamilyCode("13");
ColorType colorType8 = new ColorType();
colorType8.setNRFColorSubFamilyCode("14");
sortColorList.add(colorType);
sortColorList.add(colorType1);
sortColorList.add(colorType2);
sortColorList.add(colorType3);
sortColorList.add(colorType4);
sortColorList.add(colorType5);
sortColorList.add(colorType6);
sortColorList.add(colorType7);
sortColorList.add(colorType8);
int index = sortColorList.size();
int i = 0;
String baseColorSubFamilyCode = null;
HashMap<String, List<String>> hashMap = new HashMap<String, List<String>>();
List<String> subFamilyCodeList = null;
for (ColorType color : sortColorList)
{
i++;
if (baseColorSubFamilyCode == null) {
baseColorSubFamilyCode = color.getNRFColorSubFamilyCode();
subFamilyCodeList = new ArrayList<String>();
subFamilyCodeList.add(baseColorSubFamilyCode);
if (i == index) {
hashMap.put(baseColorSubFamilyCode, subFamilyCodeList);
}
} else if (baseColorSubFamilyCode != null
&& baseColorSubFamilyCode.equals(color
.getNRFColorSubFamilyCode())) {
subFamilyCodeList.add(color.getNRFColorSubFamilyCode());
if (i == index) {
hashMap.put(baseColorSubFamilyCode, subFamilyCodeList);
}
} else {
hashMap.put(baseColorSubFamilyCode, subFamilyCodeList);
baseColorSubFamilyCode = color.getNRFColorSubFamilyCode();
subFamilyCodeList = new ArrayList<String>();
subFamilyCodeList.add(baseColorSubFamilyCode);
if (i == index) {
hashMap.put(baseColorSubFamilyCode, subFamilyCodeList);
}
}
}
}
}