*易到用车面试总结(android)

问到 基础知识  

 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.写两个单例模式。

当时感觉不怎么样啊,一直不爱算法。

 

你可能感兴趣的:(*易到用车面试总结(android))