// 对list序列进行排序 首站->终点站
  private List<StationDistrictRelation> sortStations(List<StationDistrictRelation> list) {

    List<StationDistrictRelation> sortedList = new ArrayList<StationDistrictRelation>();

    if ((list == null) || (list.size() == 0)) {
      return null;
    }
    StationDistrictRelation sdr = new StationDistrictRelation();
    int listLength = list.size();
    String preStationName = "";

    // 查找区段内首站,即第一个车站
    for (int i = 0; i < listLength; i++) {
      sdr = list.get(i);
      String stationName = sdr.getStation_name();
      if (stationName.equalsIgnoreCase(sdr.getPrestation_name())) {
        preStationName = stationName;
        sortedList.add(sdr);
        break;
      }
    }

    // 没有找到首站
    if (preStationName.length() == 0) {
      return null;
    }
    // 依据首站 依次查找区段内其他站
    for (int i = 0; i < listLength; i++) {
      sdr = list.get(i);
      if (sdr.getStation_name().equalsIgnoreCase(sdr.getPrestation_name())) { // 首站
        continue;
      }
      for (int j = 0; j < listLength; j++) {
        sdr = list.get(j);
        String stationName = sdr.getStation_name();
        if (stationName.equalsIgnoreCase(sdr.getPrestation_name())) { // 首站
          continue;
        } else // 非首站
        if (preStationName.equalsIgnoreCase(sdr.getPrestation_name())) {
          preStationName = stationName;
          sortedList.add(sdr);
        }
      }
    }
    return sortedList;
  }