09 2012 档案
摘要:摘要:前天面试Android时遇到机试,题目是删除注释中的代码。机试开始时不能上网,我恰好忘了读写字符流的相关代码API,幸好后来能上网查关于流的API,最终得以把程序写出来。题目:请编程将Example.c文件中的所有注释删除,将结果写入Example.i文件中。输入用例Example.c:struct a { char a /*2392839238923 /*kasdlfjasld*/; char b; //23232392839};/*askdashfla'asdfalskdfhlksafdhlafasdjfhalsdjfhlasdfaskjdfhlkajds* / */vo..
阅读全文
摘要:StringBuffer类用于处理可变的字符串,它提供修改字符串的方法。(1)构造方法:a. StringBuffer s0=new StringBuffer();分配了长16字节的字符缓冲区b. StringBuffer s1=new StringBuffer(512);分配了512字节的字符缓冲区c. StringBuffer s2=new StringBuffer("You are good!");在字符缓冲区中存放字符串"Happy new year!",另外,后面再留了16字节的空缓冲区。(2) 常用方法:a.字符设置和替换setCharAt(
阅读全文
摘要:1、构造函数。String() :构造一个空字符串对象。String(byte[] bytes) :通过byte数组构造字符串对象。String(byte[] bytes, int offset, int length) :通过byte数组,从offset开始,总共length长的字节构造字符串对象。String(char[] value) :通过char数组构造字符串对象。String(char[] value, int offset, int count) :通过char数组,从offset开始,总共length长的字节构造字符串对象。String(String original) :构造
阅读全文
摘要:我们在编写数据库应用软件时,需要考虑这样的问题:因为我们开发的软件可能会安装在很多用户的手机上,如果应用使用到了SQLite数据库,我们必须在用户初次使用软件时创建出应用使用到的数据库表结构及添加一些初始化记录,另外在软件升级的时候,也需要对数据表结构进行更新。那么,我们如何才能实现在用户初次使用或升级软件时自动在用户的手机上创建出应用需要的数据库表呢?总不能让我们在每个需要安装此软件的手机上通过手工方式创建数据库表吧?因为这种需求是每个数据库应用都要面临的,所以在Android系统,为我们提供了一个名为SQLiteOpenHelper的抽象类,必须继承它才能使用,它是通过对数据库版本进行管理
阅读全文
摘要:①数据库的基本结构——表格表格是数据库中储存资料的基本架构。表格被分为栏位 (column) 及列位 (row)。每一列代表一笔资料,而每一栏代表一笔资料的一部份。举例来说,如果我们有一个记载顾客资料的表格,那栏位就有可能包括姓、名、地址、城市、国家、生日...等等。每一个表格拥有一个独一无二的名字(Table Name)以便能够让用户定位到它上面。一个典型的表格结构如下:Store_Information表格store_nameSalesDateLos Angeles$1500Jan-05-1999San Diego$250Jan-07-1999Los Angeles$300Jan-08-1
阅读全文
摘要:1.职责与关系2.消息循环3.线程与更新4.几点小结--------------------------------------------------------------------------------------------------1)接下来,我们开始这部分的内容,首先了解一下各自的职责及相互之间的关系。职责Message:消息,其中包含了消息ID,消息处理对象以及处理的数据等,由MessageQueue统一列队,终由Handler处理。Handler:处理者,负责Message的发送及处理。使用Handler时,需要实现handleMessage(Message msg)方法
阅读全文
摘要:AsyncTask是抽象类,子类必须实现抽象方法doInBackground(Params... p) ,在此方法中实现任务的执行工作,比如连接网络获取数据等。通常还应该实现onPostExecute(Result r)方法,因为应用程序关心的结果在此方法中返回。需要注意的是AsyncTask一定要在主线程中创建实例。AsyncTask定义了三种泛型类型 Params,Progress和Result。Params 启动任务执行的输入参数,比如HTTP请求的URL。Progress 后台任务执行的百分比。Result 后台执行任务最终返回的结果,比如String。AsyncTask的执行分为四.
阅读全文
摘要:主界面:设置点击按钮后写入output流初始化handler处理获取的input流初始化socket并开启socket线程得到socket的output流引用 void BindEvent() { send.setOnClickListener(new OnClickListener(){ @Override public void onClick(View view) { Toast.makeText(MulteThreadClientActivity.this, "send", Toast.L...
阅读全文
摘要:通过URL地址获得URL实例。获取URL连接实例。通过连接实例得到二进制流,包装二进制流为字符串流。把字符串流包装成缓冲读取流。通过while((inputLineString=buffer.readLine())!=null)读取数据。 btnHttp.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { btnHttp.setEnabled(false); ...
阅读全文
摘要:得到SD卡路径。通过URL地址取得URL实例。获得URL连接并打开,取得二进制输入流。读取二进制输入流写入到比特数组。通过二进制输出流从比特数组输出到SD卡路径。/** * 下载APK的线程 */ private Runnable mdownApkRunnable = new Runnable() { @Override public void run() { try { String apkName = "OSChinaApp_"+mUpdate.getVersionName()+"...
阅读全文