Android 过滤二维数组/返回ArrayIndexOutofBoundException

Android 过滤二维数组/返回ArrayIndexOutofBoundException,android,arrays,multidimensional-array,filtering,Android,Arrays,Multidimensional Array,Filtering,这是我的2d数组和单个数组的结构 public String[] sList() { String list[] = { "Asia Medic Family Hospital and Medical Center", "Adventist University of the Philippine Health Service ", "Bautista Hospital", "Catalan Medical Hosp

这是我的2d数组和单个数组的结构

public String[] sList() {
    String list[] = { "Asia Medic Family Hospital and Medical Center",
            "Adventist University of the Philippine Health Service ",
            "Bautista Hospital",
            "Catalan Medical Hospital ", 
            "Catbagan General Hospital",
            "Cavite Center for Mental Health", 
            "Cavite Doctors' Medical Center, Inc",
            "Cavite Medical Center", 
            "Cavite Municipal Hospital",
            "Cavite Naval Hospital", 
            "Contreras Medical Clinic",
            "Crisostomo General Hospital", 
            "DBB Municipal Hospital",
            "DLSU-Dr. Rodolfo Poblete Memorial Hospital ", 
            "De La Salle University Medical Center",
            "Del Rosario Hospital" };
return list;
.....
public String[][] sSpecialty() {
    String list[][] = { 



            {"Specialty 1.0", "Specialty1.1", "Specialty1.2" , " " , " " },
            {"Specialty 2.0", "Specialty2.1", "Specialty2.2" , " " , " "},
            {"Specialty 3.0", "Specialty3.1", "Specialty3.2", "Specialty3.3", " " },
            {"Specialty 4.0", "Specialty4.1", "Specialty4.2", "Specialty4.3", "Specialty4.4" },
            {"Specialty 5.0", "Specialty5.1", "Specialty5.2", "Specialty5.3", "Specialty5.4" },
            {"Specialty 6.0", "Specialty6.1", "Specialty6.2", "Specialty6.3", "Specialty6.4" },
            {"Specialty 7.0", "Specialty7.1", "Specialty7.2", "Specialty7.3", "Specialty7.4" },
            {"Specialty 8.0", "Specialty8.1", "Specialty8.2", "Specialty8.3", "Specialty8.4" },
            {"Specialty 9.0", "Specialty9.1", "Specialty9.2", "Specialty9.3", "Specialty9.4" },
            {"Specialty 10.0", "Specialty10.1", "Specialy10.2", "Specialty10.3", "Specialty10.4" },
            {"Specialty 11.0", "Specialty11.1", "Specialty11.2", "Specialty11.3", "Specialty11.4" },
            {"Specialty 12.0", "Specialty12.1", "Specialty12.2", "Specialty12.3", "Specialty12.4" },
            {"Specialty 13.0", "Specialty13.1", "Specialty13.2", "Specialty13.3", "Specialty13.4" },
            {"Specialty 14.0", "Specialty14.1", "Specialty14.2", "Specialty14.3", "Specialty14.4" },
            {"Specialty 15.0", "Specialty15.1", "Specialty15.2", "Specialty15.3", "Specialty15.4" },
            {"Specialty 16.0", "Specialty16.1", "Specialty16.2", "Specialty16.3", "Specialty16.4" }
};
return list;

我如何过滤这些2D数组,例如,当我选择特殊的2.2时,这里有一个项目。结果是菲律宾卫生服务中心的安居斯特大学,正如你所看到的,它们都在第二个数组列表中。Im精细过滤单个阵列,但在添加2d阵列时遇到问题

for (int loop = 0; loop < sList.length; loop++) {
        String temp = sTuition[loop];
        theTuitionFee = Integer.parseInt(temp);

        // ALL filter selected
        if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF >= theTuitionFee
                && sSpecialty[loop][loop].equalsIgnoreCase(thisFilter[5])
                ) {
            list.add(sList[loop]);
public class SchoolListFragmentFilter extends Fragment implements
    OnItemClickListener {
NavigationDrawer navi = new NavigationDrawer();
String thisFilter[] = NavigationDrawer.theFilter;
int amountTF = NavigationDrawer.TuitionFee;
PSManilaDB conn = new PSManilaDB();
String sList[] = conn.sList();
String sReg[] = conn.sRegAffil();
String sAdmin[] = conn.sAdmin();
String sType[] = conn.sSize();
String sAmbience[] = conn.sAmbience();
String sTuition[] = conn.sTuitionFee();
int theTuitionFee;

ListView lvList;
ArrayAdapter<String> mAdapter;
ArrayList<String> list = new ArrayList<String>();
ArrayList<Integer> schoolIndex = new ArrayList<Integer>();

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    View v = inflater
            .inflate(R.layout.layout_school_list, container, false);
    lvList = (ListView) v.findViewById(R.id.lvSchools);
    for (int loop = 0; loop < sList.length; loop++) {
        String temp = sTuition[loop];
        theTuitionFee = Integer.parseInt(temp);

        // ALL filter selected
        if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);

            // RegAffil
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && thisFilter[1].equalsIgnoreCase("*")
                && thisFilter[3].equalsIgnoreCase("*") && amountTF == 0) {
            list.add(sList[loop]);

            // Administration
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && thisFilter[3].equalsIgnoreCase("*") && amountTF == 0) {
            list.add(sList[loop]);

            // RoomAmbience
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && thisFilter[1].equalsIgnoreCase("*")
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF == 0) {
            list.add(sList[loop]);

            // Tuition Fee
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && thisFilter[1].equalsIgnoreCase("*")
                && thisFilter[3].equalsIgnoreCase("*")
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
            // regAffil and admin
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && thisFilter[3].equalsIgnoreCase("*") && amountTF == 0) {
            list.add(sList[loop]);
            // regAffil and type
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && thisFilter[1].equalsIgnoreCase("*")
                && thisFilter[3].equalsIgnoreCase("*") && amountTF == 0) {
            list.add(sList[loop]);
            // regaffil and ambience
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && thisFilter[1].equalsIgnoreCase("*")
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF == 0) {
            list.add(sList[loop]);
            // reg afill and tuition
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && thisFilter[1].equalsIgnoreCase("*")
                && thisFilter[3].equalsIgnoreCase("*")
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
            // admin and type
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && thisFilter[3].equalsIgnoreCase("*") && amountTF == 0) {
            list.add(sList[loop]);
            // admin and ambience
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF == 0) {
            list.add(sList[loop]);
            // admin and tuition
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && thisFilter[3].equalsIgnoreCase("*")
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
            // type and ambience
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && thisFilter[1].equalsIgnoreCase("*")
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF == 0) {
            list.add(sList[loop]);
            // type and tuition
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && thisFilter[1].equalsIgnoreCase("*")
                && thisFilter[3].equalsIgnoreCase("*")
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
            // ambience and tuition
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && thisFilter[1].equalsIgnoreCase("*")
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && thisFilter[3].equalsIgnoreCase("*") && amountTF == 0) {
            list.add(sList[loop]);
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF == 0) {
            list.add(sList[loop]);
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && thisFilter[3].equalsIgnoreCase("*")
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && thisFilter[1].equalsIgnoreCase("*")
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF == 0) {
            list.add(sList[loop]);
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && thisFilter[1].equalsIgnoreCase("*")
                && thisFilter[3].equalsIgnoreCase("*")
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && thisFilter[1].equalsIgnoreCase("*")
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF == 0) {
            list.add(sList[loop]);
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && thisFilter[3].equalsIgnoreCase("*")
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && thisFilter[1].equalsIgnoreCase("*")
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF == 0) {
            list.add(sList[loop]);

        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && thisFilter[3].equalsIgnoreCase("*")
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);

        }
    }
    mAdapter = new ArrayAdapter<String>(getActivity(),
            android.R.layout.simple_list_item_1, list);
    lvList.setAdapter(mAdapter);
    lvList.setOnItemClickListener(this);

    schoolIndex.clear();
    ArrayList<String> finalFilterList = list;
    ArrayList<String> finalSchoolsList = new ArrayList<String>(
            Arrays.asList(this.sList));
    for (int i = 0; i < finalFilterList.size(); i++) {
        for (int o = 0; o < finalSchoolsList.size(); o++) {
            if (finalFilterList.get(i).equalsIgnoreCase(
                    finalSchoolsList.get(o))) {
                schoolIndex.add(o);
            }
        }
    }
    mAdapter = new ArrayAdapter<String>(getActivity(),
            android.R.layout.simple_list_item_1, list);
    lvList.setAdapter(mAdapter);
    lvList.setOnItemClickListener(this);
    if (list.isEmpty()) {
        Toast.makeText(getActivity(), "No Schools Found",
                Toast.LENGTH_SHORT).show();
        navi.dia.show();
    }
    return v;
}

@Override
public void onItemClick(AdapterView<?> parent, View view, int position,
        long id) {
    // TODO Auto-generated method stub
    int indx = schoolIndex.get(position);
    Toast.makeText(getActivity(), list.get(position), Toast.LENGTH_SHORT)
            .show();
    Intent woahIntent = new Intent("capstone.app.recommender.SCHOOLINFO");
    woahIntent.putExtra("key", indx);
    startActivity(woahIntent);
}
// && sAdmin[count].equals(thisFilter[1])
// && sType[count].equals(thisFilter[2]))
for(int-loop=0;loop=租金
&&SSSpecialty[loop][loop]。相等信号情况(此筛选器[5])
) {
list.add(sList[loop]);
我正在获取ArrayIndexOutofBoundsException在这部分“&&ssSpecialty[loop][loop].equalsIgnoreCase(thisFilter[5])”中的任何建议如何解决此问题

这里是完整的程序,当我只使用单个数组时,如果您有任何其他方法来添加创建的二维数组

for (int loop = 0; loop < sList.length; loop++) {
        String temp = sTuition[loop];
        theTuitionFee = Integer.parseInt(temp);

        // ALL filter selected
        if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF >= theTuitionFee
                && sSpecialty[loop][loop].equalsIgnoreCase(thisFilter[5])
                ) {
            list.add(sList[loop]);
public class SchoolListFragmentFilter extends Fragment implements
    OnItemClickListener {
NavigationDrawer navi = new NavigationDrawer();
String thisFilter[] = NavigationDrawer.theFilter;
int amountTF = NavigationDrawer.TuitionFee;
PSManilaDB conn = new PSManilaDB();
String sList[] = conn.sList();
String sReg[] = conn.sRegAffil();
String sAdmin[] = conn.sAdmin();
String sType[] = conn.sSize();
String sAmbience[] = conn.sAmbience();
String sTuition[] = conn.sTuitionFee();
int theTuitionFee;

ListView lvList;
ArrayAdapter<String> mAdapter;
ArrayList<String> list = new ArrayList<String>();
ArrayList<Integer> schoolIndex = new ArrayList<Integer>();

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    View v = inflater
            .inflate(R.layout.layout_school_list, container, false);
    lvList = (ListView) v.findViewById(R.id.lvSchools);
    for (int loop = 0; loop < sList.length; loop++) {
        String temp = sTuition[loop];
        theTuitionFee = Integer.parseInt(temp);

        // ALL filter selected
        if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);

            // RegAffil
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && thisFilter[1].equalsIgnoreCase("*")
                && thisFilter[3].equalsIgnoreCase("*") && amountTF == 0) {
            list.add(sList[loop]);

            // Administration
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && thisFilter[3].equalsIgnoreCase("*") && amountTF == 0) {
            list.add(sList[loop]);

            // RoomAmbience
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && thisFilter[1].equalsIgnoreCase("*")
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF == 0) {
            list.add(sList[loop]);

            // Tuition Fee
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && thisFilter[1].equalsIgnoreCase("*")
                && thisFilter[3].equalsIgnoreCase("*")
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
            // regAffil and admin
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && thisFilter[3].equalsIgnoreCase("*") && amountTF == 0) {
            list.add(sList[loop]);
            // regAffil and type
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && thisFilter[1].equalsIgnoreCase("*")
                && thisFilter[3].equalsIgnoreCase("*") && amountTF == 0) {
            list.add(sList[loop]);
            // regaffil and ambience
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && thisFilter[1].equalsIgnoreCase("*")
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF == 0) {
            list.add(sList[loop]);
            // reg afill and tuition
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && thisFilter[1].equalsIgnoreCase("*")
                && thisFilter[3].equalsIgnoreCase("*")
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
            // admin and type
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && thisFilter[3].equalsIgnoreCase("*") && amountTF == 0) {
            list.add(sList[loop]);
            // admin and ambience
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF == 0) {
            list.add(sList[loop]);
            // admin and tuition
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && thisFilter[3].equalsIgnoreCase("*")
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
            // type and ambience
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && thisFilter[1].equalsIgnoreCase("*")
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF == 0) {
            list.add(sList[loop]);
            // type and tuition
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && thisFilter[1].equalsIgnoreCase("*")
                && thisFilter[3].equalsIgnoreCase("*")
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
            // ambience and tuition
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && thisFilter[1].equalsIgnoreCase("*")
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && thisFilter[3].equalsIgnoreCase("*") && amountTF == 0) {
            list.add(sList[loop]);
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF == 0) {
            list.add(sList[loop]);
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && thisFilter[3].equalsIgnoreCase("*")
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && thisFilter[1].equalsIgnoreCase("*")
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF == 0) {
            list.add(sList[loop]);
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && thisFilter[1].equalsIgnoreCase("*")
                && thisFilter[3].equalsIgnoreCase("*")
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && thisFilter[1].equalsIgnoreCase("*")
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF == 0) {
            list.add(sList[loop]);
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && thisFilter[3].equalsIgnoreCase("*")
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && thisFilter[1].equalsIgnoreCase("*")
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
        } else if (thisFilter[0].equalsIgnoreCase("*")
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);
        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && sAmbience[loop].equalsIgnoreCase(thisFilter[3])
                && amountTF == 0) {
            list.add(sList[loop]);

        } else if (sReg[loop].equalsIgnoreCase(thisFilter[0])
                && sAdmin[loop].equalsIgnoreCase(thisFilter[1])
                && thisFilter[3].equalsIgnoreCase("*")
                && amountTF >= theTuitionFee) {
            list.add(sList[loop]);

        }
    }
    mAdapter = new ArrayAdapter<String>(getActivity(),
            android.R.layout.simple_list_item_1, list);
    lvList.setAdapter(mAdapter);
    lvList.setOnItemClickListener(this);

    schoolIndex.clear();
    ArrayList<String> finalFilterList = list;
    ArrayList<String> finalSchoolsList = new ArrayList<String>(
            Arrays.asList(this.sList));
    for (int i = 0; i < finalFilterList.size(); i++) {
        for (int o = 0; o < finalSchoolsList.size(); o++) {
            if (finalFilterList.get(i).equalsIgnoreCase(
                    finalSchoolsList.get(o))) {
                schoolIndex.add(o);
            }
        }
    }
    mAdapter = new ArrayAdapter<String>(getActivity(),
            android.R.layout.simple_list_item_1, list);
    lvList.setAdapter(mAdapter);
    lvList.setOnItemClickListener(this);
    if (list.isEmpty()) {
        Toast.makeText(getActivity(), "No Schools Found",
                Toast.LENGTH_SHORT).show();
        navi.dia.show();
    }
    return v;
}

@Override
public void onItemClick(AdapterView<?> parent, View view, int position,
        long id) {
    // TODO Auto-generated method stub
    int indx = schoolIndex.get(position);
    Toast.makeText(getActivity(), list.get(position), Toast.LENGTH_SHORT)
            .show();
    Intent woahIntent = new Intent("capstone.app.recommender.SCHOOLINFO");
    woahIntent.putExtra("key", indx);
    startActivity(woahIntent);
}
// && sAdmin[count].equals(thisFilter[1])
// && sType[count].equals(thisFilter[2]))
公共类SchoolListFragmentFilter扩展了片段实现
麦克利克监听器{
NavigationDrawer navi=新建NavigationDrawer();
字符串thisFilter[]=NavigationDrawer.theFilter;
int amountTF=导航抽屉.tutionfee;
PSManilaDB conn=新的PSManilaDB();
字符串sList[]=conn.sList();
字符串sReg[]=conn.sRegAffil();
字符串sAdmin[]=conn.sAdmin();
字符串sType[]=conn.sSize();
字符串sambince[]=conn.sambince();
字符串sTuition[]=conn.sTuitionFee();
租金;
列表视图列表;
ArrayAdapter mAdapter;
ArrayList=新建ArrayList();
ArrayList学校索引=新建ArrayList();
@凌驾
创建视图上的公共视图(布局、充气机、视图组容器、,
Bundle savedInstanceState){
//TODO自动生成的方法存根
视图v=充气机
.充气(R.layout.layout\u school\u list,容器,假);
lvList=(ListView)v.findViewById(R.id.lvSchools);
for(int-loop=0;loop=租金){
list.add(sList[loop]);
//王妃
}else if(sReg[loop].equalsIgnoreCase(此筛选器[0])
&&此筛选器[1]。equalsIgnoreCase(“*”)
&&此筛选器[3]。equalsIgnoreCase(“*”&&amountTF==0){
list.add(sList[loop]);
//管理
}else if(此筛选器[0].equalsIgnoreCase(“*”)
&&sAdmin[loop].equalsIgnoreCase(此筛选器[1])
&&此筛选器[3]。equalsIgnoreCase(“*”&&amountTF==0){
list.add(sList[loop]);
//室内气氛
}else if(此筛选器[0].equalsIgnoreCase(“*”)
&&此筛选器[1]。equalsIgnoreCase(“*”)
&&sAmbience[loop].equalsIgnoreCase(此筛选器[3])
&&amountTF==0){
list.add(sList[loop]);
//学费
}else if(此筛选器[0].equalsIgnoreCase(“*”)
&&此筛选器[1]。equalsIgnoreCase(“*”)
&&此筛选器[3]。equalsIgnoreCase(“*”)
&&金额(TF>=租金){
list.add(sList[loop]);
//皇家行政
}else if(sReg[loop].equalsIgnoreCase(此筛选器[0])
&&sAdmin[loop].equalsIgnoreCase(此筛选器[1])
&&此筛选器[3]。equalsIgnoreCase(“*”&&amountTF==0){
list.add(sList[loop]);
//皇室和类型
}else if(sReg[loop].equalsIgnoreCase(此筛选器[0])
&&此筛选器[1]。equalsIgnoreCase(“*”)
&&此筛选器[3]。equalsIgnoreCase(“*”&&amountTF==0){
list.add(sList[loop]);
//帝王与氛围
}else if(sReg[loop].equalsIgnoreCase(此筛选器[0])
&&此筛选器[1]。equalsIgnoreCase(“*”)
&&sAmbience[loop].equalsIgnoreCase(此筛选器[3])
&&amountTF==0){
list.add(sList[loop]);
//注册费和学费
}else if(sReg[loop].equalsIgnoreCase(此筛选器[0])
&&此筛选器[1]。equalsIgnoreCase(“*”)
&&此筛选器[3]。equalsIgnoreCase(“*”)
&&金额(TF>=租金){
list.add(sList[loop]);
//管理员和类型
}else if(此筛选器[0].equalsIgnoreCase(“*”)
&&sAdmin[loop].equalsIgnoreCase(此筛选器[1])
&&此筛选器[3]。equalsIgnoreCase(“*”&&amountTF==0){
list.add(sList[loop]);
//管理与氛围
}else if(此筛选器[0].equalsIgnoreCase(“*”)
&&sAdmin[loop].equalsIgnoreCase(此筛选器[1])
&&sAmbience[loop].equalsIgnoreCase(此筛选器[3])
&&amountTF==0){
list.add(sList[loop]);
//行政及学费
}else if(此筛选器[0].equalsIgnoreCase(“*”)
&&sAdmin[loop].equalsIgnoreCase(此筛选器[1])
&&此筛选器[3]。equalsIgnoreCase(“*”)
&&金额(TF>=租金){
list.add(sList[loop]);
//类型和氛围
}else if(此筛选器[0].equalsIgnoreCase(“*”)
&&此筛选器[1]。equalsIgnoreCase(“*”)
&&sAmbience[loop].equalsIgnoreCase(此筛选器[3])
&&amountTF==0){
list.add(sList[loop]);
//类型和学费
}else if(此筛选器[0].equalsIgnoreCase(“*”)