Android移动开发复习
精品资料 可修改 1. 以下说法正确的是(D) A. DVM指dalivk的虚拟机,每一个android应用程序都在它自己的进程中运
行,不一定拥有一个独立的Dalvik虚拟机实例,而每一个DVM都是在Linux中的一个进程,所以说可以认为是同一个概念 B. DVM指dalivk的虚拟机,每一个Android应用程序都在它的进程中运行,不一定拥有一个独立的Dalvik虚拟机实例,而每一个DVM不一定都是在Linux中的一个进程,所以说不是一个概念 C. DVM指dalivk的虚拟机,每一个Android应用程序都在它的进程中运行,都拥有一个独立的Dalvik虚拟机实例,而每一个DVM不一定都是在Linux中的一个进程,所以说不是一个概念 D. DVM指dalivk的虚拟机,每一个Android应用程序都在它的进程中运行,都拥有一个独立的Dalvik虚拟机实例,而每一个DVM都是在Linux中的一个进程,所以说是一个概念
2. 下列哪个不是Activity的生命周期方法之一?( B ) A. onCreate B. startActivity C. onStart D. onResume
3. 以下那个控件可以用来显示图片(D)。 A.ImageView B.TextView C.Button D.以上都可以
4. Android开发中常用的数据库是(D )。 A.SQL Server B.MySQL C.Oracle D.SQLite
5. 以下调整宽度和高度的属性,哪个不是Android系统提供的?(C)。 精品资料 可修改 A.match_parentB.wrap_content C.fill_contentD.fill_parent
6. 下列哪个可做EditText编辑框的提示( D )。 A.android:inputTypeB.android:textC.android:digitsD.android:hint
7. Android中下列属于Intent的作用的是(C)。 A.实现应用程序间的数据共享 B.是一段长的生命周期,没有用户界面的程序,可以保持应用在后台运行,而不会因为切换页面而消失 C.可以实现界面间的切换,可以包含动作和动作数据,连接四大组件的纽带 D.处理一个应用程序整体性的工作
8. Hanlder是线程与Activity通信的桥梁,如果线程处理不当,你的机器就会变得越慢,那么线程销毁的方法是(A ) A onDestroy() B onClear() C onFinish() D onStop()。
9. 关于 res/raw 目录说法正确的是(A)。 A 这里的文件是原封不动的存储到设备上不会转换为二进制的格式 B 这里的文件是原封不动的存储到设备上会转换为二进制的格式 C 这里的文件最终以二进制的格式存储到指定的包中 D 这里的文件最终不会以二进制的格式存储到指定的包中
10. 关于service生命周期的onCreate()和onStart()说法正确的是(D) A. 当第一次启动的时候先后调用onCreate()和onStrat()方法 B 当第一次启动的时候只会调用onCreate()方法 精品资料 可修改 C 如果service已经启动,将先后调用onCreate()和onStrat()方法 D 如果service已经启动,只会执行onStart()方法,不再执行onCreate()
11. 课堂中,Android SDK目前支持的操作系统是 (D)。 A.windows XP B.windows 7 C.windows 10 D.DOS
12. 8、 Android项目中assets目录的作用是什么?(C)。 A.放置字符串,颜色等信息 B. 放置图片资源 C.放置较大的文件资源D.放置界面布局配置
13. Android底层用的操作系统是(D )。 A.java B.Unix C.Mac IOS D.Linux
14. 通过adb命令来安装一个apk文件,应该是( A )。 A.adb install X.apk B.adb openX.apk C.adb pushX.apk D.adb pull X.apk
15. 首次启动一个Activity,它的生命周期下面说法正确的是( A)。 A. onCreateonStartonResume B. onStartonCreateonResume C. onDestoryonStartonStop D. onStartonResumeonStop
16. MediaPlayer播放资源前,需要调用哪个方法完成准备工作( B)。 A.setDataSource B.prepareC.begin D.pause 精品资料 可修改 17. 我们这门课使用的移动开发的IDE是(D)。 A.Xcode B.Visual Studio C.MyEclipse D.Eclipse
18. Android项目下的assets目录的作用是(B)。 A、放置应用到的图片资源 B、主要放置一些文件资源,这些文件会被原封不动打包到apk里面 C、放置字符串、颜色、数组等常量数据 D、放置一些与UI相应的布局文件,都是XML文件
19. 下列不属于android布局的是?( C) A.FrameLayoutB.LinearLayoutC.BorderLayoutD.RelativeLayout
20. DDMS中Log信息分为几个级别(D )。 A.2 B.3 C.4 D.5
21. 下列哪个不属于Activity的生命周期方法(A)。 A.onInit() B.onStart C.onStop D.onPause
22. Math.round(10.5)和Math.abs(Math.round(-10.5))的值分别是(A)。 A. 11,10 B. 11,-11 C. 10,-10 D. 10,-11
23. Java是由什么语言改进重新设计的( C )。 A.C# B. C语言 C. C++ D. VB 精品资料
可修改 执行如下程序代码 a=0;c=0; do{ --c; a=a-1; }while(a>0); 后,C的值是(C) A.0 B.1 C.-1 D.死循环
24. 通过Intent可以启动哪些组件?(C) A. Activity B. service C. 两者都可以 D.两者都不可以
25. 如果把APP的最小SDK版本设置成8,那么以下哪个版本的将无法运行则个APP?(A)。 A.7 B.8r C.9 D.10
26. 下列哪一项是manifest 文件的功能(D)。 A.声明要求的最低API级别 B.声明要求的用户权限的级别 C.记录程序中使用的Activity等资源 D.都是
27. 按HOME按钮后,系统查找哪类Activity?(A) A、设置了ACTION_MAIN和ATEGORY_LAUNCHER的Activity B、设置了ACTION_MAIN或ATEGORY_LAUNCHER的Activity C、设置了ACTION_MAIN的Activity D、设置了ATEGORY_LAUNCHER的Activity
28. 在Android工程中新建了一个Activity 需要在哪个xml文件中声明一下?(C) 精品资料 可修改 A、main.xml B、string.xml C、AndroidMainifest.xml D、layout.xml
29. 如何支持语言国际化?(B) A. 在资源文件中按名称设置参数,例如zh_CN.Title=”标题”。 B. 按不同语言分目录提供不同的Strings.xml文件。 C. 两者都不正确。 D. 两者都正确。
30. 如何用adb进入手机系统(A)。 A.adb shell B.cmd C.C shell D.都不是
一、 简答题(每题5分,共10分) 1. 在布局文件中增加一个Button按钮,按钮文字为“音乐”,高宽根据内容大小匹配,并给这个按钮设置按钮触发动作名字为click,id设置btn
android:id="@+id/btn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="click" android:text="音乐" /> 精品资料 可修改 2. 写出在java文件中得到xml中的Button控件(id 为btn)的方法 Button bt1=(Button)findViewById(btn); 三、论述题(每题15分 ,共30分) 1. 描述一个Android项目开发时,整个项目中应该包含哪些目录和核心文件,这些目录和文件的主要作用是什么?
2. Android支持一般音乐格式,如mid格式,mp3格式,比如音乐名称为bg.mp3,.请写出如何做APP音乐播放功能,实现音乐可控即播放、暂
移动终端应用开发考试
移动终端应用开发考试1. Android底层是基于什么操作系统 [单选题] *Mac OSWindowsJavaLinux(正确答案)2. Android的体系结构包括哪几层? *系统运行库(Libraries)(正确答案)应用程序层(Application)(正确答案)Linux内核层(Linux Kernel)(正确答案)应用程序框架层(Application Framework)(正确答案) 3. Android应用开发常用的开发语言有 *Kotlin(正确答案)Java(正确答案)PythonPHP4. Android开发环境种中的Android SDK是指 [单选题] * Java虚拟机Android虚拟机Java运行时库Android软件开发包(正确答案)5. Android开发环境中的JDK是指 [单选题] *Java编译器Java解释器Java运行时Java开发包(正确答案)6. Android项目中放置常量的string.xml位于哪个目录下 [单选题] * layoutres/values(正确答案)res/layoutassets7. AndroidManifest.xml是 [单选题] *Java源代码文件整个应用的清单文件,配置文件(正确答案)应用构建脚本布局文件8. build.gradle是 [单选题] *清单文件,配置文件Java源代码文件应用构建脚本(正确答案)布局文件9. android项目中的布局文件放在哪个目录下 [单选题] *res/valueassetsres/drawableres/layout(正确答案)10. 下面说法错误的是 [单选题] *FrameLayout(帧布局)一块在屏幕上提前预定好的空白区域,可以填充一些View 元素到里面AbsoluteLayout(绝对布局)是以表格的形式布局(正确答案)RelativeLayout(相对布局)是按照相对位置来布局LinearLayout(线性布局)是按照横或竖的线性排列布局11. 如果使用LinearLayout实现组件垂直排列,那么在xml中应添加什么属性进行设置? [单选题] *android:horizontal="true"android:orientation="horizontal"android:orientation="vertical"(正确答案)android:vertical="true"12. 下列不属于android布局的是 [单选题] *BorderLayout(正确答案)TableLayoutLinearLayoutFrameLayout13. android中常用的布局是 [单选题] *Activity,Service,BroadCast和ContentProvideFlowLayout,BorderLayout,GridLayout和CardLayoutFrameLayout,LinenarLayout,ConstraintLayout和TableLayout(正确答案) Broadcast,Linenarlayout,Relativelayout和ContentProvide14. Android中有许多布局,它们均是用来容纳子控件和子布局的,这些布局均继承自 [单选题] *ContainerLinerLayoutViewGroup(正确答案)Layout15. 以下哪个控件用来显示图片? [单选题] *ButtonImageView(正确答案)EditTextTextView16. 如果我们需要捕捉某个控件的事件,我们需要为该控件创建 [单选题] *方法属性工程监听器(正确答案)17. Toast创建完毕后,需要显示出来此时需要调用以下哪个方法? [单选题] * show(正确答案)createviewmakeText18. Android中有许多控件,这些控件无一例外的都继承自 [单选题] *ControlView(正确答案)TextViewWindow19. 以下哪个控件可以用来显示进度 [单选题] *EditTextProgressBar(正确答案)TextViewButton20. 以下的哪个属性是用来限制EditText输入类型的? [单选题] *inputType(正确答案)keyboardsrctext21. RadioButton为单选按钮,需要配合RadioGroup使用,提供两个或多个互斥的选项集 [判断题] *对(正确答案)错22. CheckBox为多选按钮,不能单独使用 [判断题] *对错(正确答案)23. ImageView只能从本地加载图片 [判断题] *对错(正确答案)24. Button是按钮,用于响应用户的点击事件 [判断题] *对(正确答案)错25. Activity生命周期中,第一个需要执行的方法是什么? [单选题] *onCreate(正确答案)onReStartonResumeonStart26. 退出Activity对一些资源以及状态的操作保存,可以在生命周期的哪个函数中进行 [单选题] *onStartonCreateonPause(正确答案)onResume27. Activity一般会重载那些方法用来维护其生命周期 [单选题] *onCreate(),onStart(),onDestory(),onRestart(),onResume(),onPause(),onStop()(正确答案) onCreateView(),onStart(),onDestory(),onRestart(),onResume(),onPause(),onStop() onCreateMenu(),onStart(),onDestory(),onRestart(),onResume(),onPause()onStart(),onRestart(),onResume(),onPause(),onStop(),onEed()28. 以下对Activity的生命周期方法描述错误的是 [单选题] *Onstop阶段,原Activity变得不可见 ,被下一个Activity覆盖了onPause阶段, 到这一步是可见但不可交互的onResume阶段,用户不能与Activity交互(正确答案)onDestory阶段,这是Activity被干掉前最后一个被调用方法29. 在下列选项中,Activity获得焦点时执行方法是 [单选题] *onStartonPauseonResume(正确答案)onDestroy30. 下列不是onActivityResult()方法参数的是 [单选题] *resultCoderesultdata(正确答案)requestCode31. 下列哪一个不属于Activity的生命周期方法 [单选题] *onDestroy()onInit()(正确答案)onResume()onCreate()32. 在Activity的生命周期中,当 Activity被某个AlertDialog覆盖掉一部分之后,会处于哪种状态? [单选题] *活动停止销毁暂停(正确答案)33. Activity第一次被创建的时候需要调用的方法有 [单选题] *OnStart()OnStop()OnResume()OnCreate()(正确答案)34. Intent传递数据时,下列的数据类型哪些可以被传递 *ParcelableBundle(正确答案)Charsequence(正确答案)Serializable(正确答案)35. ListView是常用的()类型控件 [单选题] *按钮图片列表(正确答案)下拉列表36. ListView与数组或List集合的多个值进行数据绑定时使用 [单选题] * SimpleCursorAdapterArrayAdapterSimpleAdapter(正确答案)BaseAdapter37. 以下哪个类用于构造数组类型数据的适配器? [单选题] *AdapterSimpleAdapterCursorAdapterArrayAdapter(正确答案)38. res文件夹包含了以下哪些常见文件夹? * layout(正确答案)mipmap(正确答案)drawable(正确答案)values(正确答案)39. 以下哪个属性可以用作视图的背景 [单选题] * visibilitybackground(正确答案)idonClick40. Button继承的父类是 [单选题] *EditTextViewGroupImageViewTextView(正确答案)41. EditText哪个属性有提示信息功能 [单选题] * cursorVisiblehint(正确答案)inputTypemaxLength42. ViewGroup视图可包含其他视图 [判断题] *对(正确答案)错43. ExpandableListView是一个垂直滚动显示两级列表项的视图 [判断题] *对(正确答案)错44. Android建议字体大小单位采用 [单选题] *sp(正确答案)cmdppt45. TextView是EditText的父类 [判断题] *对(正确答案)错46. 至多允许一个CheckBox的checked属性值为true [判断题] *对错(正确答案)47. ___________属性可修改文本字体大小 [填空题] *_________________________________(答案:textSize)48. ___________属性可修改文本字体颜色 [填空题] *_________________________________(答案:textColor)49. ____________属性可以设置Button的监听事件处理方法 [填空题] *_________________________________(答案:setOnClickListener)50. ____________属性可以设置ImageButton上面的图标内容 [填空题] * _________________________________(答案:src)您的学号姓名班级: [填空题] *_________________________________。
Android移动应用开发案例教程(慕课版)-课程大纲.docx
Undroid移动应用开发》课程大纲5. 4. Activity 的传值5. 4. 1. Activity跳转时传递数据5. 4. 2.获得Activity返回的数据5. 4. 3.案例3:个人信息发送与接收APP开发5. 5. Activity的生命周期5. 5.1关于任务和返回栈5.5.2 Activity生命周期的回调方法5. 5.3案例4:体验Activity的生命周期5. 6.案例5:用户注册及登录APP开发5. 7.课程小结5. 8.课后练习5. 9.课堂笔记5. 10.实训记录六、Android 高级组件List View 和RecyclerView 6.1.学习目标6.2.ListView 控件6.2.1.List View 控件介绍6.2.2.ListView控件的使用6.2.3.ListView 常用Adapter6.2.4.案例1:使用List View完成通讯录开发6.3.Base Adapter 适配器6.3.1.BaseAdapter 适配器介绍6.3.2.BaseAdaptcr适配器的使用6.3.3.案例2:使用BaseAdapter升级通讯录6.4.ListView 的常用Listener6.4.1.ListView 的Listener 简介6.4.2.ListView 的Listener 使用6.4.3.案例3:完成通讯录的选中及下拉刷新功能6.5.RecyclerView 控件6.5.1.RecyclerView 控件介绍6.5.2.RecyclerView 控件的使用6.5.3.案例4:使用RecyclerView开发我爱电影6.6.RecyclerView 的Listener6.6.1 .RecyclerView 的单击监听6.6.2.SwipcRcfrcshLayout 刷新控件的使用6.6.3.案例5:完成我爱电影的选中及刷新功能6.7.课程小结6.8.课后练习6.9.课堂笔记6.1().实训记录七、Android 高级控件ViewPager 和Fragment 7.1学习目标7.2 ViewPager控件使用7.2.1ViewPager 介绍7.2.2PagerAdapter 介绍和用法7.2.3案例1: APP启动页的开发7.3 Fragment 使用7.3.1Fragment 介绍7.3.2Fragment的生命周期7.3.3Fragment适配器介绍7.3.4案例2: APP底部导航功能开发7.4案例3:商城导航APP开发7.5课程小结7.5课后练习1.7.课堂笔记1.8.实训记录八、Android的网络编程Volley 和Gson框架8.1学习目标8.2HTTP协议简介8.3Volley框架的使用8.3.1Volley框架的简介8.3.2Android 中使用Volley8.3.3案例1:狗狗图片APP8.4JSON数据解析8.4.1JSON格式数据介绍8.4.2JSON格式数据解析8.4.3案例2:我爱电影APP (网络版)8.5Gson框架的使用8.5.1Gson框架简介8.5.2Gson使用流程8.5.3案例3:使用Gson框架改造我爱电影(网络版)8.6课程小结8.7课后练习8.8.课堂笔记8.9.实训记录九、综合项目:影视分享APP开发9.1学习目标9.2项目需求9. 3 Meterial Design风格界面设计9. 3. 1 Meterial Design 风格9. 3. 2侧滑导航9. 3. 3菜单项切换9.3.4悬浮按钮和底部消息9.4搭建项目图片与数据访问框架9.4.1图片及数据访问框架配置9. 4. 2 JavaBean 设计9.4.3数据访问框架测试9. 5电影列表功能开发9. 5. 1需求描述9. 5. 2 UI布局设计9. 5. 3业务功能实现9. 5.4运行效果。
移动应用开发期末考试
移动应用开发期末考试填空题:1. Android中查看应用程序日志的工具是(). [填空题] *_________________________________(答案:Logcat)2. Dalvik中的Dx工具会把部分class文件转换成()文件。
[填空题] *_________________________________(答案:dex)3. Android中的TableLayout继承自()类 [填空题] *_________________________________(答案:LinearLayout)4. 在R.java文件中, android:id属性会自动生成对应的()类型的值。
[填空题] * _________________________________(答案:int)的 启动模式包括standard、singleTop、singleTask和() [填空题] * 5. Activity_________________________________(答案:singleInstance)判断题:6. Android应用程序的主要语言是Java。
[判断题] *对(正确答案)错7.第三代移动通信技术(3G)包括TD-LTE和FDD-LTE两种制式。
[判断题] *对错(正确答案)8. ViewGroup是盛放界面控件的容器。
[判断题] *对(正确答案)错属性用于设置布局内控件所占的权9. LinearLayout布 局中的android:layout weight重。
[判断题] *对(正确答案)错10.Android的控件样式,每一个XML属性都对应一个Java方法。
[判断题] *对(正确答案)错11.AlertDialog对话 框能够直接通过new关键字创建对象。
[判断题] *对错(正确答案)12. ListView列表 中的数据是通过Adapter加载的。
Android移动开发基础教程 第2章 Android界面开发
android:textSize
显示文字的大小
android:textColor
显示文字的颜色
android:gravity
文字在文本框中的位置
android:ellipsize
文字内容超过文本框大小时的显示方式
android:password
是否以点代替显示输入的文字
android:editable
设置当前对话框是否可以被取消
setIcon(Drawable icon)
设置对话框的标题图标
setItems(CharSequence[] items, .OnClickListener listener)
DialogInterface
将对话框的内容设置为列表
setMessage(CharSequence message)
2.4 对话框
自定义对话框
除了创建已有的对话框样式外,AlertDialog.Builder还支持调用serView()方法显示自定义的View。
通过XML布局文件控制Android的界面,可以使界面的设计更加简单清晰,具有更低地耦合性。而且这种方式可以将 视图的逻辑从Java代码中抽离出来,更加符合MVC的设计原则。Android也推荐使用XML的方式设计界面。
Android开发基础知识入门
第2章 Android界面开发
2.2 常用布局
线性布局
2.1 视图组件和视图容器
基本概念
(1)组件或控件:界面的基本元素; (2)视图(View):所有控件的基类; (3)视图容器(ViewGroup):控件的载体;
Android开发基础知识入门
第2章 Android界面开发
2.1 视图组件和视图容器
深搜(二)Android移动应用开发
算法基础
1
2
深度优先搜索(二)
3
例题:Roads
美国黄石公园
ROADS (百练1724)
N个城市,编号1到N。城市间有R条单向道路。
每条道路连接两个城市,有长度和过路费两个属性。
Bob只有K块钱,他想从城市1走到城市N。问最短共需要走多长的路。如果到不了N
,输出-1
输入:
11
totalLen += cityMap[s][i].L; totalCost += cityMap[s][i].t; minL[d][cost] = totalLen; visited[d] = 1; Dfs(d); visited[d] = 0; totalCost -= cityMap[s][i].t; totalLen -= cityMap[s][i].L; } } }
2<=N<=100 0<=K<=10000 1<=R<=10000 每条路的长度 L, 1 <= L <= 100 每条路的过路费T , 0 <= T <= 100
KNΒιβλιοθήκη Rs1 e1 L1 T1 s1 e2 L2 T2 ...
sR eR LR TR
s e是路起点和终点
5
解题思路
从城市 1开始深度优先遍历整个图,找到所有能过到达 N 的走法, 选一个最优的。
cout << minLen << endl; else
cout << "-1" << endl; }
14
例题:生日蛋糕
美国黄石公园
生日蛋糕 (百练1190)
复习答案 ANDROID
一、选择题
1.Android 是一种以 Linux 为基础的开放源码操作系统,主要应用于便携设备。Android 股份有限公 司于 2003 年在美国加州成立,在 2005 年被 Google 收购,从 2009 年 2 月开始推出 Android 1.1,到 2012 年已经推出 Android 4.0,发展非常的迅速,以下叙述有问题的是。 () A、 2009 年 4 月,推出了 Android 1.5 ,名称是 Cupcake 纸杯蛋糕 B、 Android 1.5 主要改进:摄像头开启和拍照速度更快;GPS 定位速度大幅提升;支持触屏虚拟键盘 输入 C、 2009 年 9 月,推出了 Android 1.6,名称是 Donut 甜甜圈 D、 2009 年 4 月,微软推出了 Android 1.5 ,名称是 Gingerbread 姜饼 2.Activity 是 Android 程序的呈现层,显示可视化的用户界面,并接收与用户交互所产生的界面事 件,以下叙述有问题的是。 () A、 Android 应用程序可以包含一个或多个 Activity,一般在程序启动后会呈现一个 Activity,用 于提示用户程序已经正常启动 B、 在界面上的表现形式:全屏窗体,非全屏悬浮窗体,对话框 C、 Activity 形象的说就是一个容器,在里面放置各种控件(按钮,文本,复选框等),就形成了软 件的界面 D、 Activity 和 Service 一样,都没有用户界面,适合用于需要长时间在后台运行的应用 3.Button,就是按钮,是 Android 中应用最多的控件之一,也是应用程序和用户实现 相互 交互的功能之一,以下叙述错误的是。 () A、 Button 是一种按钮控件,用户能够在该控件上点击,并后引发相应的事件处理函数 B、 ImageButton 是一种带图片显示的控件按钮 C、 使用 Button,必须导入包 android.widget.Button D、 Button 是一种文本显示控件,主要功能就是显示文本 4. Android 系统中会存在很多应用程序,Content Provider 属于 Android 应用程序的组件之一,作 为应用程序之间主要的共享数据的途径,以下叙述有问题的是。 () A、ContentProvider 的不必进行权限许可,开发者可以任意访问和使用 B、android 有一个独特之处就是,数据库只能被它的创建者所使用,其他的应用是不能访问到的, 所以如果你想实现不同应用之间的数据共享, content provider 是一种非常重要的方法 C、在 Android 中,content provider 是一个特殊的存储数据的类型,它提供了一套标准的接口用来 获取以及操作数据 D、Content Provider 主要的功能就是存储并检索数据以及向其他应用程序提供访问数据的接口 5. Dalvik 调试监视服务 DDMS 是由 Android 软件开发包()提供的调试工具。 A、 JDK B. SDK C.Logcat D. console 6. 下列哪个是 Android 的集成开发环境( ) A、 Mozilla Firefox B、 eclipse C、 Visual C++ 6.0 D、 CodeBlocks 7. 下列哪个是 Java 的集成开发环境() A、eclipse B、Microsoft Office PowerPoint C、SQL Server 2008 D、Adobe Dreamweaver 8. Java 源文件和编译后的文件扩展名分别为( ) A、 .class 和 .java B、 .java 和 .class C、 .class 和 .class D、 .java 和 .java 9. 设 int x=1,float y=2,则表达式 x / 2 10. 下列哪一个关键字用于实现接口来定义类? ( ) A、extends B、implements C、abstract D、interface 11. 若 a 的值为 3 时,下列程序段被执行后,c 的值是多少?( ) if ( a>0 ) if ( a>3 ) c = 12; else c = 3; else c = 7; A、1 B、2 C、3 D、4 12. 下列程序段执行后,变量 a 的值是多少?() int a = 5, b =12; a = ++a+b; A、10 B、18 C、12 D、5 13. 下列程序段执行后,变量 a 的值是多少?() int a = 0; for(int i = 0; i < 10; i++){ if(i%2 == 0) a++; } A、1 B、5 C、7 D、12 14. 下列哪个可以用于创建一个新的线程() A、从 Thread 类派生一个新的线程类,并重载它的 run()方法 B、Java 无法创建新线程 C、只需定义一个 Thread 对象、只需要派生 Runnalbe 接口即可 D、实现 ThreadRunnalbe 接口,并重载 start()方法 15. 当一个线程调用 start 方法后,该线程处于什么状态() A、新建状态 B、就绪状态 C、运行状态 D、暂停状态 16. Android 应用程序开发中,开发者经常使用 XML 文件声明界面布局的特点,以下对界面设置相关 叙述正确的是要求的是() A、Android 开发中,对于界面布局的开发方式是将程序的表现层和控制层分离 B、Android 开发中,在后期简单调整修改用户界面时,既需对 XML 界面布局文件进行修改,也需更 改程序的源代码 C、android:layout_height="wrap_content" 表示此控件的宽度等于父控件的宽度 D、Android 开发中,界面布局的布局和功能都必须在代码中实现,没有其他的文件对布局进行描述 17. 在 android 开发中列表 ListView 是比较常用的组件,它以列表的形式展示具体内容,并且能够 根据数据的长度自适应显示,以下对 ListView 表述不正确的是() A、列表的显示需要三个元素:ListVeiw 控件(用来展示列表的 View)属于其中之一; B、ListView 不一定需要使用 Adapter 适配器,它可以直接把数组列表的值显示到界面控件 C、列表的显示需要三个元素:适配器 Adapter(用来把数据映射到 ListView 上的中介) 属于其中之一 D、列表的显示需要三个元素:数据源(具体的将被映射的字符串,图片,或者数组) 属于其中之一 18. 在 android 开发中,Adapter 是连接后端数据和前端显示的适配器接口,是数据和 UI(View)之 间 一 个 重 要 的 纽 带 。 在 常 见 的 View(ListView,GridView , Spinner)等 地 方 都 需 要 用到 Adapter, 以下对 Adapter 表述不正确的是() A、一般来说,数据可以来自一个数组,一个 List,或者数据库中的游标。这些是程序开发中用到的
Android移动开发基础案例教程 (4)
· 数据存储方式 · XML解析
· JSON解析 · SharedPreferences
作业点评
– 请简要说明Activity有几种启动模式,以及每种启动 模式的特点。
– 请简要写出Activity生命周期中的方法及其作用
预习检查
– Android平台提供了几种数据存储方式 – XML数据与JSON数据的区别
4.4.2 JSON解析
解析JSON对象
– 例如,要解析的JSON数据如下:
{ "name": "zhangsan", "age": 27, "married":true } //json1 一个json对象 [16,2,26] //json2 一个数字数组
– 使用JSONObject解析JSON对象:
3
实现步骤:
⑤ 界面逻辑代码的设计与实现
案例代码(详见教材P21—P26)
主讲内容
4.1 数据存储方式 4.2 文件存储
4.3 XML解析
4.4 JSON解析
4.4.1 JSON数据
JSON数据特点
– JSON即JavaScript Object Notation(对象表示法),是一种轻量 级的数据交换格式。
– JSON是基于纯文本的数据格式,它可以传输String、Number、
Boolean类型的数据,也可以传输数组,或者Object对象。 – JSON文件的扩展名为.json。 – JSON分为JSON对象和JSON数组两种数据结构。
4.4.1 JSON数据
对象结构
– 以“{”开始,以“}”结束。中间部分由0个或多个以“,” 分隔的key:value对构成,注意关键字和值之间以“:”分隔。
Android移动应用开发教材第1章习题参考答案 (4)
第6章字符串1.Python中,创建字符串时,可以使用单引号、双引号和三引号。
2.Python中,使用字符串的split方法可以按照指定的分隔符对字符串进行切割,返回由切割结果组成的列表。
3.可以利用运算符+连接两个字符串,也可以使用join方法将序列中的元素以指定的字符连接成一个新的字符串。
4.Python中正则表达式中的普通字符需要做精确匹配,而特殊字符指定的匹配模式则对应了用于模糊 匹配的规则。
5.Python中正则表达式的特殊序列是由 \ 和一个字符构成。
6.使用Python提供的re模块,可以实现基于正则表达式的模糊匹配。
pile函数用于将一个字符串形式的正则表达式编译成一个正则表达式对象,供 match、search以及其他一些函数使用。
8.re模块中的match函数用于对字符串开头的若干字符进行正则表达式的匹配。
匹配成功,返回一个Match对象;匹配失败,返回None 。
9.re模块中的finditer函数与re.findall函数功能都是用于在字符串中找到所有与正则表达式匹配的子串,区别在于re.findall函数返回 列表形式的结果,而re.finditer返回 迭代器形式的结果。
10.re模块中的split函数用于将字符串按与正则表达式匹配的子串分割。
11.已知s1="I "am a student.",s2='I \'am a student',则print(s1,s2)的输出结果为(D)A.I 'am a student. I 'am a studentB.I "am a student. I 'am a studentC.I "am a student. I \'am a studentD.程序报错12.下列说法错误的是(D)A. find方法是在指定检索范围中按照从左至右的顺序检索,找到子串第一次出现的位置B. rfind方法在指定检索范围中按照从右至左的顺序检索,找到子串第一次出现的位置C. index与find作用相同,rindex与rfind作用相同,只是find和rfind在检索不到字符串时返回-1,而index和rindex会引发ValueError异常D. index与find作用相同,rindex与rfind作用相同,只是find和rfind找到一个就返回,而index和rindex会检索到所有的子串13.下列关于replace方法str.replace(old, new[, max])的说法错误的是(C)A. 使用字符串中的replace方法可以将字符串中的指定子串替换成其他内容B.str是要做替换操作的字符串,old和new分别是要替换的子串和替换成的字符串C. max是最多替换的子串数量,如果不指定max参数则只替换第一个满足条件的子串D. replace方法返回替换后的字符串14.print(len("中国\"china"))的输出结果是(B)A. 7B. 8D. 1015.下列匹配模式叙述错误的是(D)A.^用于匹配字符串开头的若干字符B.*用于匹配前一个模式0次或多次C.?用于匹配前一个模式0次或1次D.A|B表示同时匹配模式A和模式B16.关于正则表达式特殊序列叙述错误的是(C)A. \A匹配字符串开头的若干字符,功能同^B. \d匹配任一数字字符,等价于[0-9]C. \S匹配任一空白字符D. \D与\d作用相反,匹配任一非数字字符,等价于[^0-9]17.写出下面程序的运行结果。
ndroid Studio移动应用开发基础(第2版) 课件 第1、2章 ndroid 概述、 建立
1.3 Android 的发展历史
➢ 2007 年,Google 建立了开放手机联盟; ➢ 2009 年,这个联盟成员包括Sprint Nextel、T-Mobile、Motorola、Samsung、Sony Ericsson、
Toshiba、Vodafone、Google、Intel、Texas Instruments 等IT 巨头; ➢ 2011 年,开放手机联盟的成员已近80 家,Android 已经成为移动设备事实上的行业标准。 ➢ 2022 年3 月,Android 平台的版本已从1.0 发展到了12.0。 ➢ 本书以12.0版本的Android平台为默认开发平台。
➢ Android平台是一个通用的计算平台,它采用 Linux 作为支撑操作系统,采用Java 作为开发环 境,通过编程实现完整的电话、视频、网络、 界面设计等基础功能。
➢ Android平台的体系结构如右图所示。 ➢ Linux操作系统是基础。 ➢ Dalvik VM 是一个修订的Java 虚拟机。 ➢ Android以Java库的形式提供开发APP的API接口。
提示安装Android Studio。
2.2 开发第一个Android 应用程序
➢ 2.2.1 创建First 应用程序工程
➢ First 应用程序
2.3 Android 应用程序工程的结构
➢ 典型的Android 应用程序工程的结构如图所示;
➢ AndroidManifest.xml 文件:Android 应用程序的配置文件,它类似于Java EE 程序中的web.xml 文件,该文件中包含Android应用程序的基本信息;
Q&A
第2章 建 立 Android 开发环境
Android移动应用开发技术与实践ch03-习题答案
习题与练习1.选择题答案1) D2) D解析:A答案是对象引用方法时的写法。
答案B与答案C均不正确。
3) D解析:选项A,B,C与编译时多态和运行时多态为Java多态的五个方面。
4) A解析:java命令负责运行编译后的.class文件,不需要文件后缀名。
5) A,B,C解析:本题考查的是方法重写。
注意,方法重写时子类的访问权限不能小于父类方法。
另外,选项A并不是父类的构造方法,它是子类中的新方法。
6) A解析:本题考查的是抽象类及抽象方法。
如果一个方法前面加上关键词abstract修饰,则这样的方法为抽象方法,抽象方法只有方法的声明而没有实体,上述代码会出现编译错误。
如果一个类中含有抽象方法,则该类要定义成抽象类,并且抽象类不能实例化。
所以,选项A时正确的。
2.改错题答案1)上述代码中第3行会出现编译错误,内部类Inner中的成员变量不能定义为static。
3.填空题答案1)enumRED, GREEN, BLUE2)private class Enginedrive();4.编程题答案1)import java.awt.*;public class vehicle{private int speed;private Stringkind;private Colorcolor;public vehicle(){speed=2000;1kind="To";color=Color.red;}public vehicle(int s,String k,Color c){speed=s;kind=k;color=c;}public void setColor(Color c1){color=c1;}public void getColor(String){if(equals(kind,k)){return color;}}}public class Car extends vehicle{int passengers;public Car(int s,String k,Color c,int p){super(2000,"DD",blue);passengers=p;}public int getPassengers(){return passengers;}}2)import java.awt.*;interface A{2String a="接口A中的常量";void showA();}interface B extends A{String b="接口B中的常量";void showB();}interface C extends B{String c="接口C中的常量";void showC();}class ImpInterfaceABC implements C{public void showA(){System.out.println(a);}public void showB(){System.out.println(b);}public void showC(){System.out.println(c);}}class interTest{public static void main(String args[]){ImpInterfaceABC intf=new ImpInterfaceABC();intf.showA();intf.showB();intf.showC();}}3。
