Android面试题—校招—美团

本文解析了美团和大众点评的技术面试题,包括选择最大数的算法复杂度、Activity间交互原理、修饰符作用范围、集合接口实现及四大组件运行机制等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

美团和大众点评笔试题

1 N个数选最大的M个,其复杂度为:

nLogM

 

2 Activity A 启动了B。 ( B的启动模式是SingleInstance.

实际上在源码中,正常的startActivity也会走到startAFR中,

AstartActivityForResult()的形式启动B

那么AonAtivityResult()方法什么时候被回调?

 

1 startActivityForResult() 多用来一次性启动B,当B调用了finish()方法之后,界面将自动回到A,并且调用AonActivityResult()方法。

2 startActivityForResult(intent,requestCode) requestCode为一个int值,用来标识一个凭依。

3 A中重写onActivityResult(reqestCode,resultCode,intent) 用于处理从B返回的数据,

 

4 B中回传数据要使用setResult(resultCode,intent)  并在之后调用finish()方法。

 

如果B的启动模式是SingleTask的。可能出现在任务栈内,B位于A下边,那么就会删除B之上的,包含A,则AonActivityResult就会立刻被回调,缺result_Code=RESULT_CANCEL

 

如果B的启动模式是singleInstance,那么B的任务栈与A不是同一个任务栈。那么AonActivityResult方法就不会被回调。

 

3 修饰符从大到小范围

Public protect default private

 

4 哪些类实现或继承了Collection接口?

Collection set list queue 的父类接口。 Map接口是独立的。

 

Iterator接口又是另外一个概念,或者说它更偏向与一种模式。

Iterator接口的实现,必须借助于Collection实现类 来  实现。

IteratorCollection实现类的数据形式,以及访问其内部数据的方式解耦。

假设没有Iterator,访问数组则遍历,访问链表则while循环。

 

Collection.iterator()方法将返回一个Iterator实例。

 

5 四大组件的回调方法运行在哪儿?

 

四大组件默认都运行在UI线程,

所以其生命周期,各种回调方法,也在UI线程中。

 

但是,IntentService,HandlerThread,AsyncTask 等,启动了子线程的,他们的回调方法就不一定在UI线程中了。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值