java 百度poi_Android应用中使用百度地图API之POI(三)

先看执行后的图吧:

fefac8e84077705b4a6af3eb03f1d574.png

SouthEast

a6493e9af99b2e5be6c08c2b36e1fd38.png

POI(Point of Interest)。中文能够翻译为“兴趣点”。在地理信息系统中。一个POI能够是一栋房子、一个商铺、一个邮筒、一个公交站等  具体:http://developer.baidu.com/map/sdkandev-4.htm

主要应用 MKSearch 类:

com.baidu.mapapi.search

类 MKSearch

java.lang.Object

com.baidu.mapapi.search.MKSearch

public class MKSearch

extends java.lang.Object

搜索服务.

用于位置检索、周边检索、范围检索、公交检索、驾乘检索、步行检索

字段概要

字段

限定符和类型

字段和说明

static int

static int

static int

static int

公交检索策略常量:最少步行距离

static int

static int

static int

static int

static int

static int

static int

static int

static int

方法概要

方法

限定符和类型

方法和说明

int

公交路线具体信息搜索 异步函数。返回结果在MKSearchListener里的onGetBusDetailResult方法通知

void

销毁MKSearch 模块 , 当不再使用Search 功能时。须要调用此函数

int

MKPlanNode start,

java.lang.String endCity, MKPlanNode end)

驾乘路线搜索.

int

MKPlanNode start,

java.lang.String endCity, MKPlanNode end,

java.util.List wpNodes)

驾车路线搜索,可设置途经点 异步函数。返回结果在MKSearchListener里的onGetDrivingRouteResult方法通知

int

依据地址名获取地址信息 异步函数,返回结果在MKSearchListener里的onGetAddrResult方法通知

int

获取指定页的的poi结果.

boolean

初使化,使用完毕后。请调用 destroy 函数释放资源

int

poi具体信息检索

boolean

获取POI信息共享短url.

boolean

GeoPoint location,

java.lang.String name, java.lang.String address)

获取地址信息共享短URL.

int

依据范围和检索词发起范围检索.

int

城市poi检索.

int

GeoPoint pt,

int radius)

依据中心点、半径与检索词发起周边检索.

int

依据地理坐标点获取地址信息 异步函数,返回结果在MKSearchListener里的onGetAddrResult方法通知

int

设置驾车路线规划策略.

void

int

设置路线规划策略.

int

联想词检索,依据模糊的不完备的检索词返回精确的建议搜索词 异步函数,返回结果在MKSearchListener里的onGetSuggestionResult方法通知

int

MKPlanNode start, MKPlanNode end)

公交路线搜索.

int

MKPlanNode start,

java.lang.String endCity, MKPlanNode end)

步行路线搜索.

通过上面的阅读应该有所了解了吧,直接代码了。

MainActivity.java

package com.majianjie.baidumap;

import java.util.ArrayList;

import java.util.List;

import android.app.Activity;

import android.app.AlertDialog;

import android.content.DialogInterface;

import android.graphics.Bitmap;

import android.graphics.drawable.Drawable;

import android.os.Bundle;

import android.view.LayoutInflater;

import android.view.Menu;

import android.view.MenuItem;

import android.view.View;

import android.view.View.MeasureSpec;

import android.view.Window;

import android.widget.AdapterView;

import android.widget.AdapterView.OnItemSelectedListener;

import android.widget.ArrayAdapter;

import android.widget.Button;

import android.widget.ImageView;

import android.widget.Spinner;

import android.widget.TextView;

import android.widget.Toast;

import com.baidu.location.BDLocation;

import com.baidu.location.BDLocationListener;

import com.baidu.location.LocationClient;

import com.baidu.location.LocationClientOption;

import com.baidu.mapapi.BMapManager;

import com.baidu.mapapi.MKGeneralListener;

import com.baidu.mapapi.map.LocationData;

import com.baidu.mapapi.map.MKEvent;

import com.baidu.mapapi.map.MKMapViewListener;

import com.baidu.mapapi.map.MapController;

import com.baidu.mapapi.map.MapPoi;

import com.baidu.mapapi.map.MapView;

import com.baidu.mapapi.map.MyLocationOverlay;

import com.baidu.mapapi.map.PoiOverlay;

import com.baidu.mapapi.map.PopupClickListener;

import com.baidu.mapapi.map.PopupOverlay;

import com.baidu.mapapi.search.MKAddrInfo;

import com.baidu.mapapi.search.MKBusLineResult;

import com.baidu.mapapi.search.MKDrivingRouteResult;

import com.baidu.mapapi.search.MKPoiInfo;

import com.baidu.mapapi.search.MKPoiResult;

import com.baidu.mapapi.search.MKSearch;

import com.baidu.mapapi.search.MKSearchListener;

import com.baidu.mapapi.search.MKShareUrlResult;

import com.baidu.mapapi.search.MKSuggestionResult;

import com.baidu.mapapi.search.MKTransitRouteResult;

import com.baidu.mapapi.search.MKWalkingRouteResult;

import com.baidu.platform.comapi.basestruct.GeoPoint;

import com.example.baidumap.R;

public class MainActivity extends Activity {

//声明控件

private Button request;

private static StringBuilder sb = new StringBuilder();

private int i=1;

private Toast mToast=null;

private BMapManager mBMapManager=null;

private MapView mMapView = null;//MapView 是地图主控件

private MapController mMapController = null;//用MapController完毕地图控制

private LocationClient mLocClient;

public LocationData mLocData = null;

private LocationOverlay myLocationOverlay = null;//定位图层

private boolean isRequest = false;//是否手动触发请求定位

private boolean isFirstLoc = true;//是否首次定位

private PopupOverlay mPopupOverlay = null;//弹出泡泡图层。浏览节点时使用

private View viewCache=null;

public BDLocation location = new BDLocation();

//POI

private MKSearch mMKSearch = null;

private Spinner detail;

private List poi;

private ArrayAdapter< String> adapter;

private String poiName="";

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

//**使用地图sdk前需先初始化BMapManager。这个必须在setContentView()先初始化

mBMapManager = new BMapManager(this);

//第一个參数是API key, 第二个參数是经常使用事件监听,用来处理通常的网络错误,授权验证错误等,你也能够不加入这个回调接口

mBMapManager.init("LDtH1sVwr7kygaF0aTqaVwWU", new MKGeneralListener() {

//授权错误的时候调用的回调函数

@Override

public void onGetPermissionState(int iError) {

if (iError == MKEvent.ERROR_PERMISSION_DENIED) {

showToast("API KEY错误, 请检查!");

}

}

//一些网络状态的错误处理回调函数

@Override

public void onGetNetworkState(int iError) {

if (iError == MKEvent.ERROR_NETWORK_CONNECT) {

Toast.makeText(getApplication(), "您的网络出错啦!", Toast.LENGTH_LONG).show();

}

}

});

//初始化

init();

//单击事件

click();

}

//* 显示Toast消息

private void showToast(String msg){

if(mToast == null){

mToast = Toast.makeText(this, msg, Toast.LENGTH_SHORT);

}else{

mToast.setText(msg);

mToast.setDuration(Toast.LENGTH_SHORT);

}

mToast.show();

}

private void click() {

request.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View arg0) {

requestLocation();

}

});

}

@Override

protected void onResume() {

//MapView的生命周期与Activity同步。当activity挂起时需调用MapView.onPause()

mMapView.onResume();

mBMapManager.start();//又一次启动

mMKSearch.init(mBMapManager, new MySearchListener());

super.onResume();

}

@Override

protected void onPause() {

//MapView的生命周期与Activity同步,当activity挂起时需调用MapView.onPause()

mMapView.onPause();

super.onPause();

}

private void init() {

//使用自定义的title,注意顺序

setContentView(R.layout.activity_main); //activity的布局 //这里是加入自定义的titlebtn.xml

//通过id找到他们

mMapView = (com.baidu.mapapi.map.MapView) findViewById(R.id.bmapView);

mMapController=mMapView.getController(); //获取地图控制器

mMapController.enableClick(true); //设置地图是否响应点击事件

request=(Button)findViewById(R.id.request);

viewCache = LayoutInflater.from(this).inflate(R.layout.pop_layout, null);

mPopupOverlay= new PopupOverlay(mMapView, new PopupClickListener() {// * 点击弹出窗体图层回调的方法

@Override

public void onClickedPopup(int arg0) {

//隐藏弹出窗体图层

mPopupOverlay.hidePop();

}

});

mMapController.enableClick(true); //* 设置地图是否响应点击事件 .

mMapController.setZoom(12);// * 设置地图缩放级别

mMapView.setBuiltInZoomControls(true); // * 显示内置缩放控件

mMapView.setTraffic(true);

//poi

mMKSearch = new MKSearch();

detail=(Spinner)findViewById(R.id.detail);

poi = new ArrayList();

poi.add("请选择");

poi.add("ATM");

poi.add("旅馆");

poi.add("餐厅");

poi.add("公园");

poi.add("药店");

poi.add("图书馆");

poi.add("景点");

poi.add("医院");

poi.add("KFC");

poi.add("学校");

poi.add("超市");

adapter=new ArrayAdapter(this, android.R.layout.simple_spinner_item,poi);

adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

detail.setAdapter(adapter);

detail.setOnItemSelectedListener(new OnItemSelectedListener() {

@Override

public void onItemSelected(AdapterView> parent, View v,int position, long id) {

poiName=(parent.getSelectedItem().toString());

if(poiName.equals("请选择")){}

else{

mMKSearch.init(mBMapManager, new MySearchListener());//注意,MKSearchListener仅仅支持一个。以最后一次设置为准

mMKSearch.poiSearchNearBy(poiName, new GeoPoint((int) (39.907004 * 1E6), (int) (119.54048 * 1E6)), 5000);

}

}

@Override

public void onNothingSelected(AdapterView

> arg0) {}

});

mLocData = new LocationData();

mLocClient = new LocationClient(getApplicationContext()); // 定位SDK的核心类

//实例化定位服务。LocationClient类必须在主线程中声明

mLocClient.registerLocationListener(new BDLocationListenerImpl());//注冊定位监听接口

/**

* 设置定位參数

*/

LocationClientOption option = new LocationClientOption();

option.setOpenGps(true); //打开GPRS

option.setAddrType("all");//返回的定位结果包括地址信息

option.setCoorType("bd09ll");//返回的定位结果是百度经纬度,默认值gcj02

option.setScanSpan(5000); //设置发起定位请求的间隔时间为5000ms

option.disableCache(false);//禁止启用缓存定位

//option.setPoiNumber(5); //最多返回POI个数

//option.setPoiDistance(1000); //poi查询距离

//option.setPoiExtraInfo(true); //是否须要POI的电话和地址等具体信息

mLocClient.setLocOption(option);

mLocClient.start(); //调用此方法開始定位

myLocationOverlay = new LocationOverlay(mMapView);//定位图层初始化

//将定位数据设置到定位图层里

myLocationOverlay.setMarker(getResources().getDrawable(R.drawable.set));

//加入定位图层

mMapView.getOverlays().add(myLocationOverlay);

myLocationOverlay.enableCompass();

//更新图层数据运行刷新后生效

mMapView.refresh();

/*

//准备要加入的Overlay

double mLat1 = 39.910159;

double mLon1 = 119.544697;

// 用给定的经纬度构造GeoPoint,单位是微度 (度 * 1E6)

GeoPoint p1 = new GeoPoint((int) (mLat1 * 1E6), (int) (mLon1 * 1E6));

//准备overlay图像数据,依据实情情况修复

Drawable mark= getResources().getDrawable(R.drawable.set);

//用OverlayItem准备Overlay数据

OverlayItem item1 = new OverlayItem(p1,"item1","item1");

//使用setMarker()方法设置overlay图片,假设不设置则使用构建ItemizedOverlay时的默认设置

//创建IteminizedOverlay

CustomItemizedOverlay itemOverlay = new CustomItemizedOverlay(mark, mMapView);

//将IteminizedOverlay加入到MapView中

mMapView.getOverlays().clear();

mMapView.getOverlays().add(itemOverlay);

//如今全部准备工作已准备好,使用下面方法管理overlay.

//加入overlay, 当批量加入Overlay时使用addItem(List)效率更高

itemOverlay.addItem(item1);

//删除overlay .

//itemOverlay.removeItem(itemOverlay.getItem(0));

//mMapView.refresh();

//清除overlay

// itemOverlay.removeAll();

// mMapView.refresh();

mMapView.refresh();

*/

// mMapController.setCenter(p1);

mMapView.regMapViewListener(mBMapManager, new MKMapViewListener() {

// * 地图移动完毕时会回调此接口 方法

@Override

public void onMapMoveFinish() {

//showToast("地图移动完毕。");

}

//* 地图加载完毕回调此接口方法

@Override

public void onMapLoadFinish() {

showToast("地图加载完毕!");

}

//* 地图完毕带动画的操作(如: animationTo())后。此回调被触发

@Override

public void onMapAnimationFinish() {

}

//当调用过 mMapView.getCurrentMap()后,此回调会被触发 可在此保存截图至存储设备

@Override

public void onGetCurrentMap(Bitmap arg0) {

}

//* 点击地图上被标记的点回调此方法

@Override

public void onClickMapPoi(MapPoi arg0) {

if (arg0 != null){

showToast(arg0.strText);

}

}

});

}

class MySearchListener implements MKSearchListener{

@Override

public void onGetAddrResult(MKAddrInfo arg0, int arg1) {}

@Override

public void onGetBusDetailResult(MKBusLineResult arg0, int arg1) {}

@Override

public void onGetDrivingRouteResult(MKDrivingRouteResult arg0, int arg1) {}

@Override

public void onGetPoiDetailSearchResult(int arg0, int arg1) {}

@Override

public void onGetPoiResult(MKPoiResult result, int type, int iError) {

if (result == null) {

return;

}

// 清除地图上已有的全部覆盖物

mMapView.getOverlays().clear();

// PoiOverlay是baidu map api提供的用于显示POI的Overlay

PoiOverlay poioverlay = new PoiOverlay(MainActivity.this, mMapView);

// 设置搜索到的POI数据

poioverlay.setData(result.getAllPoi());

// 在地图上显示PoiOverlay(将搜索到的兴趣点标注在地图上)

mMapView.getOverlays().add(poioverlay);

if(result.getNumPois() > 0) {

// 设置当中一个搜索结果所在地理坐标为地图的中心

MKPoiInfo poiInfo = result.getPoi(0);

mMapController.setCenter(poiInfo.pt);

}

// sb.append("共搜索到").append(result.getNumPois()).append("个POI\n");

sb.append("POI信息:").append("\n");

// 遍历当前页返回的POI(默认仅仅返回10个)

for (MKPoiInfo poiInfo : result.getAllPoi()) {

sb.append(i+" 名称:").append(poiInfo.name).append("\n");

sb.append("地址:").append(poiInfo.address).append("\n");

i++;

}

// 通过AlertDialog显示当前页搜索到的POI

new AlertDialog.Builder(MainActivity.this)

.setTitle("搜索到的POI信息")

.setMessage(sb.toString())

.setPositiveButton("关闭", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dialog, int whichButton) {

dialog.dismiss();

sb.delete(0,sb.length());

i=1;

}

}).create().show();

}

@Override

public void onGetShareUrlResult(MKShareUrlResult arg0, int arg1,int arg2) {}

@Override

public void onGetSuggestionResult(MKSuggestionResult arg0, int arg1) {}

@Override/** * 公交换乘路线搜索结果 * * @param result 搜索结果 * @param iError 错误号(0表示正确返回) */

public void onGetTransitRouteResult(MKTransitRouteResult arg0, int arg1) {}

@Override /** * 步行路线搜索结果 * * @param result 搜索结果 * @param iError 错误号(0表示正确返回) */

public void onGetWalkingRouteResult(MKWalkingRouteResult arg0, int arg1) {}

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

super.onCreateOptionsMenu(menu);

CreateMenu(menu);

return true;

}

private void CreateMenu(Menu menu){

MenuItem mnu1 =menu.add(0,0,0,"显示卫星地图");

{

mnu1.setAlphabeticShortcut('a');//设置快捷键

//mnu1.serIcon(R.drawable.icon);//设置图片

}

MenuItem mnu2 =menu.add(0,1,1,"显示街道地图");

{

mnu2.setAlphabeticShortcut('b');//设置快捷键

//mnu1.serIcon(R.drawable.icon);//设置图片

}

MenuItem mnu3 =menu.add(0,2,2,"3D地图");

{

mnu3.setAlphabeticShortcut('c');//设置快捷键

//mnu1.serIcon(R.drawable.icon);//设置图片

}

}

@Override

public boolean onOptionsItemSelected(MenuItem item) {

if(item.getItemId() == 0){

mMapView.setSatellite(true);//设置显示为卫星地图:

mMapView.setTraffic(false);

}else if(item.getItemId() == 1){

mMapView.setTraffic(true);//显示街道地图

mMapView.setSatellite(false);

}else if(item.getItemId() == 2){

//mMapView.se

}

return true;

}

public class BDLocationListenerImpl implements BDLocationListener {

// * 接收异步返回的定位结果。參数是BDLocation类型參数

@Override

public void onReceiveLocation(BDLocation location) {

if (location == null) {

return;

}

MainActivity.this.location = location;

mLocData.latitude = location.getLatitude();

mLocData.longitude = location.getLongitude();

//假设不显示定位精度圈,将accuracy赋值为0就可以

mLocData.accuracy = location.getRadius();

mLocData.direction = location.getDerect();

//将定位数据设置到定位图层里

myLocationOverlay.setData(mLocData);

//更新图层数据运行刷新后生效

mMapView.refresh();

if(isFirstLoc || isRequest){

//将给定的位置点以动画形式移动至地图中心

mMapController.animateTo(new GeoPoint(

(int) (location.getLatitude() * 1e6), (int) (location.getLongitude() * 1e6)));

showPopupOverlay(location); //加载时候就弹出

isRequest = false;

}

isFirstLoc = false;

}

// 接收异步返回的POI查询结果。參数是BDLocation类型參数

@Override

public void onReceivePoi(BDLocation poiLocation) {

}

}

private void requestLocation() {

isRequest = true;

if(mLocClient != null && mLocClient.isStarted()){

showToast("正在定位......");

mLocClient.requestLocation();

}

}

//继承MyLocationOverlay重写dispatchTap方法

private class LocationOverlay extends MyLocationOverlay{

public LocationOverlay(MapView arg0) {

super(arg0);

}

// * 在“我的位置”坐标上处理点击事件。

@Override

protected boolean dispatchTap() {

//点击我的位置显示PopupOverlay

showPopupOverlay(location);

return super.dispatchTap();

}

@Override

public void setMarker(Drawable arg0) {

super.setMarker(arg0);

}

}

@Override

protected void onDestroy() {

//MapView的生命周期与Activity同步,当activity销毁时需调用MapView.destroy()

mMapView.destroy();

//退出应用调用BMapManager的destroy()方法

if(mBMapManager != null){

mBMapManager.destroy();

mBMapManager = null;

}

//退出时销毁定位

if (mLocClient != null){

mLocClient.stop();

}

super.onDestroy();

}

//* 显示弹出窗体图层PopupOverlay

private void showPopupOverlay(BDLocation location){

TextView popText = ((TextView)viewCache.findViewById(R.id.location_tips));

popText.setText("[我的位置]\n" + location.getAddrStr());

mPopupOverlay.showPopup(getBitmapFromView(popText),

new GeoPoint((int)(location.getLatitude()*1e6), (int)(location.getLongitude()*1e6)),

15);

}

// * 将View转换成Bitmap的方法

public static Bitmap getBitmapFromView(View view) {

view.measure(MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED), MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));

view.layout(0, 0, view.getMeasuredWidth(), view.getMeasuredHeight());

view.buildDrawingCache();

Bitmap bitmap = view.getDrawingCache();

return bitmap;

}

}

有关性能的优化,这里不多解说,正在学习中。

。。/呵呵

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/533222.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java第四次上机作业_第十java上机作业

第十java上机作业 第七章上级作业 7.1 public class Rectangle { double width1; double height1; String color“white“; public Rectangle(){} public Rectangle(double width,double height,String color) { this.widthwidth; this.heightheight; this.colorcolor; } publi…

java文件编码格式环境变量_Jenkins maven 构建乱码,修改file.encoding系统变量编码为UTF-8...

一切都是windows的控制台默认编码GBK问题情景&#xff1a;使用jenkins构建&#xff0c;console 输出的中文乱码。代码编码格式是utf-8&#xff0c;因为Jenkins会默认读取当前系统的编码格式&#xff0c;导致构建日志乱码和selenium自动化测试输入的中文乱码。控制台输出乱码摸索…

java分布式会话redis_详解springboot中redis的使用和分布式session共享问题

对于分布式使用NginxTomcat实现负载均衡&#xff0c;最常用的均衡算法有IP_Hash、轮训、根据权重、随机等。不管对于哪一种负载均衡算法&#xff0c;由于Nginx对不同的请求分发到某一个Tomcat&#xff0c;Tomcat在运行的时候分别是不同的容器里&#xff0c;因此会出现session不…

python3.8使用方法_python3.8新特性

python3.8新特性Python3.8稳定版已发布&#xff0c;官网发布了一篇介绍新特性的文章&#xff0c;在此记录一下。新增赋值操作符:作用&#xff1a;把较大表达式中的某部分值赋给变量,因为看起来像海象的眼睛和牙齿&#xff0c;: 操作符有个特别的名字&#xff1a;海象操作符范例…

java责任链设计模式 订单_Java责任链设计模式实例分析

本文实例讲述了Java责任链设计模式。分享给大家供大家参考&#xff0c;具体如下&#xff1a;一 代码abstract class AbstractHandler {private Handler Handler null;// 持有责任链中下一个责任处理者的引用public void setHandler( Handler handler ) {this.Handler handler…

java map去重复的数据_使用HashMap去重复数据.

因为HashMap是键值对形式&#xff0c;所以一个键只对应一个Value&#xff0c;利用这个原理&#xff0c;我们就可以根据某列重复数据做键对重复数据进行处理啦~首先先看看我要处理 的数据然后我最后想要的结果&#xff1a;需求&#xff1a;根据groupName每个分组信息只显示一条数…

centos6.5 MySQL 服务器_启用CentOS6.5 64位安装时自带的MySQL数据库服务器

本人在虚拟机上又安装了一台linux机器&#xff0c;作为MySQL数据库服务器用&#xff0c;在安装时选择了系统自带的MySQL服务器端&#xff0c;以下是启用步骤。首先开启mysqld服务#service mysqld start进入/usr/bin目录#cd /usr/bin设定mysql数据库root用户的密码#mysqladmin -…

java xml date_W3C XML 模式时间数据类型与java Date进行转换

W3C XML 模式时间数据格式:"2014-11-17T 09:40:25" 或者 “2014-11-17T 09:40:2508:00”要想把以上格式的时间转换为能被java所使用个格式有以下3种办法&#xff1a;(1)、jdk中有这么一个类XMLGregorianCalendar&#xff0c;使用XMLGregorianCalendar类中的toGreGreg…

authinfo.php,【nginxphp】后台权限认证方式

一、最常用的方法(代码中限制)1、如何限制IPfunction get_new_ip(){if(getenv(HTTP_CLIENT_IP)) {$onlineip getenv(HTTP_CLIENT_IP);} elseif(getenv(HTTP_X_FORWARDED_FOR)) {$onlineip getenv(HTTP_X_FORWARDED_FOR);} elseif(getenv(REMOTE_ADDR)) {$onlineip getenv(RE…

xss漏洞php注射实战,利用XSS渗透DISCUZ 6.1.0实战

论坛——>入侵者布置的跨站攻击——>转移被入侵这视线(隐蔽)论坛插入脚本&#xff1a;var img new Image();img.src get_cookie.php?var encodeURI(document.cookie);但是我不一样&#xff0c;因为他需要诱导人去点击他的链接&#xff0c;但是现在人不是傻子&#xf…

宇轩网络面试题目PHP,二十道接地气的php面试题,让你直接通过面试!就此奉上~...

1、echo count(“abc”); 输出什么&#xff1f;答&#xff1a;"1"count— 计算数组中的单元数目或对象中的属性个数int count ( mixed var\[,intvar \[, intvar\[,intmode ] ), 如果 var 不是数组类型或者实现了 Countable 接口的对象&#xff0c;将返回 1&#xff0…

java期末试题c卷,JAVA程序设计期末考试试卷及参考答案

《JAVA程序设计》期末考试试卷考生注意&#xff1a;1&#xff0e;本试卷满分100分。2&#xff0e;考试时间90分钟。3&#xff0e;卷面整洁&#xff0c;字迹工整。4&#xff0e;填写内容不得超出密封线。总分题号一二三四五六核分人题分21204019复查人得分一、单选择题(每题2分&…

mysql 分组查询原理,MySQL分組查詢Group By實現原理詳解

由於GROUP BY 實際上也同樣會進行排序操作&#xff0c;而且與ORDER BY 相比&#xff0c;GROUP BY 主要只是多了排序之后的分組操作。當然&#xff0c;如果在分組的時候還使用了其他的一些聚合函數&#xff0c;那么還需要一些聚合函數的計算。所以&#xff0c;在GROUP BY 的實現…

mac php命令行模式,phpstorm分别在Mac和Windows下启动命令行,并启用ssh

Mac:在terminal下运行 sudo -i 输入密码 就可以用ssh IP:端口 命令行登录了DAssist是一个命令行开发辅助&#xff0c;可直接在系统命令行工具中使用&#xff0c;Linux和MacOS等自带命令终端的系统好说&#xff0c;windows下也有cmd和powerShell。那么如何结合开发IDE工具进行…

python 逻辑回归准确率是1,Python利用逻辑回归模型解决MNIST手写数字识别问题详解...

本文实例讲述了Python利用逻辑回归模型解决MNIST手写数字识别问题。分享给大家供大家参考&#xff0c;具体如下&#xff1a;1、MNIST手写识别问题MNIST手写数字识别问题&#xff1a;输入黑白的手写阿拉伯数字&#xff0c;通过机器学习判断输入的是几。可以通过TensorFLow下载MN…

php面试题接口方面,php面试题6 - osc_xb4v1nhl的个人空间 - OSCHINA - 中文开源技术交流社区...

php面试题6一、总结二、php面试题6写出你认为语言中的高级函数:1)preg_replace()2)preg_match()3) ignore_user_abort()4) debug_backtrace()5) date_default_timezone_set(“PRC”)6) get_class_methods() 得到类的方法名的数组7) preg_split() 字符串分割成数组8)json_encode…

关于php的问题有哪些,关于PHP的报错问题?

关于这个报错的表格我不知到怎么去做&#xff0c;下面的是代码&#xff1a;header(content-type:text/html;charsetutf-8);session_start();include_once ../include/conf.php;include_once ../include/func.php;include_once ../include/mysql.func.php;check_login();$pageSi…

oracle官方文档查看方法,oracle官方文档_查看初始化参数(举例)

深蓝的blog&#xff1a;http://blog.csdn.net/huangyanlong/article/details/46864217记录了一下&#xff0c;使用oracle11g联机文档&#xff0c;查看初始化参数的步骤。如果想查看&#xff0c;可以修改的初始化参数的概念信息&#xff0c;可以点击“ChangingParameter Values …

oracle p l,使用P.A.L制作便携软件 (一) 基本原理 | 么么哒拥有者

因爱好自学所得&#xff0c;并非专业&#xff0c;此处只是抛砖引玉&#xff0c;欢迎相互交流、学习、提高&#xff0c;辛苦码字不易&#xff0c;如转载望保留链接出处。简单介绍&#xff1a;P.A.L是PortableApps.com Launcher的简称&#xff0c;它是PortableApps.com开发的便携…

linux 建oracle分区表,Oracle 10g 11g分区表创建举例

1.3. 创建其他类型分区表1.3.1. 用多列分区键创建范围分区表SQL> create table aning_mutilcol_range2 (aning_id number,3 aning_name varchar2(100),4 aning_year number,5 aning_month number,6 aning_day number,7 aning_amount number8 )9 partition by range (aning_y…