问到 基础知识
1. 适配器模式在 安卓中的应用。
2. Service 的启动方式。
3. 广播的注册方式有几种? 有什么不同?
4.public private protected 以及缺省的作用域。
5.自定义控件中 onMeasure() 方法的作用?
6.android中多线程操作如何实现?
7.android 的各种存储方式。
编程题:
1 一个整数 ,它加上100后是一个完全平方数,加上168后又是一个完全平方数,这个数是多少?
<span style="font-family:SimHei;font-size:14px;">private void cal() { int i=1; while(true) { int a=(int)Math.sqrt(i+100); int b=(int)Math.sqrt(i+168); if(a*a==(i+100) && b*b==(i+168)) { System.out.println(i); break; } i++; } }</span>
2.一个球从100m高度自由落下,每次落地后反跳会原高度的一半,在落下,求它落下10次 经过的路程,以及落下十次反弹多高。
3 在一个数组中,找出出现次数最多 且数值最大的数 输出。
<span style="font-family:SimHei;font-size:14px;">private void sort() { int[] array = {2, 1, 2, 3, 3, 5, 3, 3, 2,2,5,5,5,5}; //map的key存放数组中存在的数字,value存放该数字在数组中出现的次数 HashMap<Integer, Integer> map = new HashMap<Integer, Integer>(); for(int i = 0; i < array.length; i++) { if(map.containsKey(array[i])) { int temp = map.get(array[i]); map.put(array[i], temp + 1); } else { map.put(array[i], 1); } } Collection<Integer> count = map.values(); //找出map的value中最大的数字,也就是数组中数字出现最多的次数 int maxCount = Collections.max(count); int maxNumber = 0; for(Map.Entry<Integer, Integer> entry : map.entrySet()) { //得到value为maxCount的key,也就是数组中出现次数最多的数字 if(maxCount == entry.getValue()) { maxNumber = entry.getKey(); System.out.println("maxNumber"+maxNumber); } } System.out.println("出现次数最多的数字为:" + maxNumber); System.out.println("该数字一共出现" + maxCount + "次"); }</span>
4.写两个单例模式。
当时感觉不怎么样啊,一直不爱算法。