2道通杀的iOS/Android笔试题

原创 2016年08月31日 13:02:04

         最近在招聘iOS/Android开发工程师, 为了提高效率总结了2个笔试题。   能甄别出iOS非科班出身的人, 也能判断出大学的学习成绩。 难倒一大片iOS、Android、Java开发。。。

第一题:   请给出输出结果。

        int a[2][5] = {{1,2,3,4,5},{6,7,8,9,10}};

        int *ptr = (int*)(&a[0] +1);

        printf("%d,%d,%d,%d,%d", *(&a[0][0]+1), *ptr, *(ptr-1), sizeof(a), sizeof(ptr));

        结果: 2,6,5,40,4

分析:

       本题是考验C语言基础, 也可以考验初级iOS开发, 看他/她是否为iOS培训班出身的, 一般培训生都答不出此题。现在很多两三年工作经验的iOS开发都是假的, 培训机构教出来的, 在招聘时一定要注意!!! 如果此题答不上来, 再让他用C语言写个标准的最小宏#define MIN(a,b)  ((a)<(b)? (a):(b)) ,  还答不出来, 面试可以结束了微笑

       对于高级或资深Android开发, 本题同样可以问,因为大学里都学过C/C++。 我在面试某公司Android开发时,还被问到C++的拷贝构造函数形参里为什么有&疑问    高级/资深开发不仅要有技术深度,还要有一定的技术广度大笑。 &在C++里是与, 跟指针作用类似, 放在拷贝构造函数形参里是因为形参可以直接使用被引用对象的值, 不加&操作符无法拿到形参指向的对象。


第二题:   用泛型写个静态函数, 形参是类的.class, 返回值是这个类的对象。

参数答案:

    public static <T> T getClassExt(Class<T> clz){

          if (clz == null) {

                  return null;

           }

        T obj = null; 
        try {
            obj = clz.newInstance();
        } catch (InstantiationException e) {
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        }

        return obj;

    }

或者

    public static <T> T getClassExt(Class<T> clz){

          if (clz == null) {

                  return null;

           }

        T obj = null;  //默认执行没有形参的构造函数, 得到实例
        Constructor<?>[] constructors = clz.getConstructors();
        if (constructors == null || constructors.length==0) {
             return null;
        }
        try {
           obj  = (T) constructors[0].newInstance();
        } catch (InvocationTargetException e) {
            e.printStackTrace();
        }catch (IllegalAccessException e) {
            e.printStackTrace();
        }catch (InstantiationException e) {
            e.printStackTrace();
        }
        return obj;
     }

分析: 本题主要是考验泛型和反射,  我们用的fastjson或gson的解析函数JSon.parseObject,Gson.parse都用到了泛型和反射, 而且Android热修复、插件化都用到了反射,   高级/资深开发写不出来就说不过去了。   招聘java后台开发时也可以问这道题。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

阿里巴巴2013实习生笔试题精选2道算法题

阿里巴巴2013实习生笔试题精选2道算法题 1. 有N个人,其中一个明星和n-1个群众,群众都认识明星,明星不认识任何群众,群众和群众之间的认识关系不知道,现在如果你是机器人R2T2...

java基础试题4:笔试题2道

java代码笔试题题目: Problem Statement # 1 Given a set of N (> 1) positive integers, you are supposed to p...

android安卓手机变身无线网卡,实现“畅无线“电脑版”台式机笔记本通杀

转载http://blog.sina.com.cn/s/blog_6088f2be01012p8b.html 先上附件, WIN732位或XP及以下 http://dl.dban...

通杀所有系统的硬件漏洞?聊一聊Drammer,Android上的RowHammer攻击

就在大家纷纷埋头研究dirtycow的时候,Drammer横空出世!

iOS笔试题-77道(含答案)

  • 2015-02-27 16:39
  • 152KB
  • 下载

iOS笔试题(带答案)

  • 2016-06-20 23:58
  • 429KB
  • 下载

华为2道机试题(review)

华为2道机试题: /** @date:2010/09/14 @author:weedge @comment: 1. 识别字符串中的整数并转换为数字形式 问题描述: 识别输入字符串中所有的整数,统计...
  • weege
  • weege
  • 2011-05-19 15:32
  • 1224

IOS笔试题+答案

  • 2014-06-08 18:10
  • 65KB
  • 下载

2013年8月15日百度校园招聘2道面试题及解答

1、来自《编程之美》的概率题:一个桶里面有白球、黑球各100个,现在按下述规则取球:的     i 、每次从通里面拿出来两个球;     ii、如果取出的是两个同色的求,就再放入一个黑球;   ...

iOS基础笔试题 - 集锦二

前言 以下部分题目来源于网络,笔者在此处收集起来,既是要巩固自我,也希望能够帮助到同样需要的人!参考答案均为笔者所写,其有疑问或者出错之处,请在评论中提出,谢谢!不喜勿喷! 1、即时聊天A...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)