com.amap.api.services.poisearch

## 类 PoiSearch.Query

- java.lang.Object
- - com.amap.api.services.poisearch.PoiSearch.Query

- 所有已实现的接口:
    java.lang.Cloneable
  封闭类:
    PoiSearch

      public static class PoiSearch.Query
      extends java.lang.Object
      implements java.lang.Cloneable

  此类定义了搜索的关键字，类别及城市。
  从以下版本开始:
    2.0.0

- - ### 构造器概要

    构造器
    构造器和说明
    `Query(java.lang.String query, java.lang.String ctgr)` Query构造函数 参数 query 及 ctgr 至少需要定义一个。
    `Query(java.lang.String query, java.lang.String ctgr, java.lang.String city)` 根据给定的参数来构造一个 PoiSearch.Query 的新对象。

  - ### 方法概要

    所有方法 实例方法 具体方法 已过时的方法
    限定符和类型 | 方法和说明
    --- | ---
    `java.lang.String` | `getBuilding()` 返回待查询建筑物的标识
    `java.lang.String` | `getCategory()` 返回待查分类组合。
    `java.lang.String` | `getCity()` 返回待查城市（地区）的电话区号。
    `boolean` | `getCityLimit()` 返回是否严格按照设定城市搜索
    `java.util.Map<java.lang.String,java.lang.String>` | `getCustomParams()` 获取自定义参数
    `java.lang.String` | `getExtensions()` 扩展字段 base表示只返回基础数据，all表示所有数据 ，默认 base
    `LatLonPoint` | `getLocation()` 获取设置的经纬度
    `int` | `getPageNum()` 获取设置查询的是第几页，从0开始。
    `int` | `getPageSize()` 获取设置的查询页面的结果数目。
    `protected java.lang.String` | `getQueryLanguage()`
    `java.lang.String` | `getQueryString()` 返回待查字符串。
    `boolean` | `isDistanceSort()` 返回是否按照距离排序。
    `boolean` | `isRequireSubPois()` 返回是否按照父子关系展示POI
    `boolean` | `isSpecial()` 是否对结果进行人工干预，如火车站，原因为POI较为特殊，结果存在人工干预，干预结果优先，所以距离优先的排序未生效 仅周边搜索支持
    `boolean` | `queryEquals(PoiSearch.Query query)` 比较两个查询条件是否相同（不包括查询第几页）。
    `void` | `requireSubPois(boolean isSubPois)` 设置是否返回父子关系。
    `void` | `setBuilding(java.lang.String mBuilding)` 如果要进行室内搜索，需要添加该字段
    `void` | `setCityLimit(boolean isLimit)` 仅在通过关键字搜索时进行限制严格按照设置城市搜索
    `void` | `setCustomParams(java.util.Map<java.lang.String,java.lang.String> customParams)` 设置自定义参数，格式K-V
    `void` | `setDistanceSort(boolean distanceSort)` 设置是否按距离排序
    `void` | `setExtensions(java.lang.String extensions)` 扩展字段 base表示只返回基础数据，all表示所有数据 ，默认 base
    `void` | `setLocation(LatLonPoint location)` 设置经纬度
    `void` | `setPageNum(int pageNum)` 设置查询第几页的结果数目。
    `void` | `setPageSize(int size)` 设置查询每页的结果数目。
    `void` | `setQueryLanguage(java.lang.String language)` 已过时。 请参考 `ServiceSettings.setLanguage(String)`
    `void` | `setSpecial(boolean special)` 是否对结果进行人工干预，如火车站，原因为POI较为特殊，结果存在人工干预，干预结果优先，所以距离优先的排序未生效 仅周边搜索支持 默认为 true

    - ### 从类继承的方法 java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### 构造器详细资料

    - #### Query

          public Query(java.lang.String query,
                       java.lang.String ctgr)

      Query构造函数

      参数 query 及 ctgr 至少需要定义一个。

      参数:
        `query` - 查询字符串，多个关键字用“|”分割 。
        `ctgr` - POI 类型的组合，比如定义如下组合：餐馆|电影院|景点 （POI类型请在网站“相关下载”处获取）。
      从以下版本开始:
        2.0.0

    - #### Query

          public Query(java.lang.String query,
                       java.lang.String ctgr,
                       java.lang.String city)

      根据给定的参数来构造一个 PoiSearch.Query 的新对象。

      参数 query 及 ctgr 至少需要定义一个，并且参数 city 必须定义，不能为空。

      参数:
        `query` - 查询字符串，多个关键字用“|”分割 。
        `ctgr` - POI 类型的组合，比如定义如下组合：餐馆|电影院|景点 （POI类型请在网站“相关下载”处获取）。
        `city` - 待查询城市（地区）的城市编码 citycode、城市名称（中文或中文全拼）、行政区划代码adcode。必设参数。
      从以下版本开始:
        2.0.0

  - ### 方法详细资料

    - #### getBuilding

          public java.lang.String getBuilding()

      返回待查询建筑物的标识
      返回:
        待查询建筑物的标识
      从以下版本开始:
        4.0.0

    - #### setBuilding

          public void setBuilding(java.lang.String mBuilding)

      如果要进行室内搜索，需要添加该字段
      参数:
        `mBuilding` - 待查询建筑物的标识
      从以下版本开始:
        4.0.0

    - #### getQueryString

          public java.lang.String getQueryString()

      返回待查字符串。
      返回:
        待查字符串。
      从以下版本开始:
        2.0.0

    - #### setQueryLanguage

          public void setQueryLanguage(java.lang.String language)

      已过时。 请参考 `ServiceSettings.setLanguage(String)`
      从以下版本开始:
        2.0.0

    - #### getQueryLanguage

          protected java.lang.String getQueryLanguage()

    - #### getCategory

          public java.lang.String getCategory()

      返回待查分类组合。
      返回:
        待查分类组合。
      从以下版本开始:
        2.0.0

    - #### getCity

          public java.lang.String getCity()

      返回待查城市（地区）的电话区号。
      返回:
        待查城市（地区）的电话区号。
      从以下版本开始:
        2.0.0

    - #### getPageNum

          public int getPageNum()

      获取设置查询的是第几页，从0开始。自 5.2.1后修改成从1开始，和iOS保持一致。
      返回:
        查询的是第几页。
      从以下版本开始:
        2.1.0

    - #### setPageNum

          public void setPageNum(int pageNum)

      设置查询第几页的结果数目。
      参数:
        `pageNum` - 查询第几页的结果，从0开始。自 5.2.1后修改成从1开始，和iOS保持一致。
      从以下版本开始:
        2.1.0

    - #### setPageSize

          public void setPageSize(int size)

      设置查询每页的结果数目。
      参数:
        `size` - 新的查询条件， 默认值是20 条,取值范围在1-30 条。
      从以下版本开始:
        2.1.0

    - #### getPageSize

          public int getPageSize()

      获取设置的查询页面的结果数目。
      返回:
        查询页面的结果数目。
      从以下版本开始:
        2.1.0

    - #### setCityLimit

          public void setCityLimit(boolean isLimit)

      仅在通过关键字搜索时进行限制严格按照设置城市搜索
      参数:
        `isLimit` - true，城市限制；false，输入文字是权重词汇时，全国搜索。默认为false。
      从以下版本开始:
        2.8.0

    - #### getCityLimit

          public boolean getCityLimit()

      返回是否严格按照设定城市搜索
      返回:
        true，城市限制；false，关键字是权重词汇时，全国搜索
      从以下版本开始:
        2.8.0

    - #### requireSubPois

          public void requireSubPois(boolean isSubPois)

      设置是否返回父子关系。
      参数:
        `isSubPois` - true 按照父子关系层级返回。false不返回父子关系。
      从以下版本开始:
        2.8.0

    - #### isRequireSubPois

          public boolean isRequireSubPois()

      返回是否按照父子关系展示POI
      返回:
        true 按照父子关系层级返回。false不返回父子关系。
      从以下版本开始:
        2.8.0

    - #### isDistanceSort

          public boolean isDistanceSort()

      返回是否按照距离排序。
      返回:
        true 按照距离排序，false不按照距离排序。
      从以下版本开始:
        5.2.0

    - #### setDistanceSort

          public void setDistanceSort(boolean distanceSort)

      设置是否按距离排序
      参数:
        `distanceSort` - 是否按照距离排序
      从以下版本开始:
        5.2.0

    - #### getLocation

          public LatLonPoint getLocation()

      获取设置的经纬度
      返回:
        经纬度
      从以下版本开始:
        5.2.0

    - #### setLocation

          public void setLocation(LatLonPoint location)

      设置经纬度
      参数:
        `location` -
      从以下版本开始:
        5.2.0

    - #### isSpecial

          public boolean isSpecial()

      是否对结果进行人工干预，如火车站，原因为POI较为特殊，结果存在人工干预，干预结果优先，所以距离优先的排序未生效 仅周边搜索支持
      返回:
        是否对结果进行人工干预
      从以下版本开始:
        7.6.0

    - #### setSpecial

          public void setSpecial(boolean special)

      是否对结果进行人工干预，如火车站，原因为POI较为特殊，结果存在人工干预，干预结果优先，所以距离优先的排序未生效 仅周边搜索支持 默认为 true
      从以下版本开始:
        7.6.0

    - #### getExtensions

          public java.lang.String getExtensions()

      扩展字段 base表示只返回基础数据，all表示所有数据 ，默认 base
      从以下版本开始:
        7.6.0

    - #### setExtensions

          public void setExtensions(java.lang.String extensions)

      扩展字段 base表示只返回基础数据，all表示所有数据 ，默认 base
      从以下版本开始:
        7.6.0

    - #### setCustomParams

          public void setCustomParams(java.util.Map<java.lang.String,java.lang.String> customParams)

      设置自定义参数，格式K-V
      参数:
        `customParams` -
      从以下版本开始:
        9.7.2

    - #### getCustomParams

          public java.util.Map<java.lang.String,java.lang.String> getCustomParams()

      获取自定义参数
      返回:

    - #### queryEquals

          public boolean queryEquals(PoiSearch.Query query)

      比较两个查询条件是否相同（不包括查询第几页）。
      参数:
        `query` - 待比较的对象
      返回:
        查询条件是否相同
      从以下版本开始:
        2.1.0