问题描述
- 关于今天的java面试,大家发表下评论
-
贵公司在某网上看到我简历,打来电话邀请面试。网上简单搜索下该公司,决定去面试看看笔试有一题 是否存在一个数 使得 i+1<i ()选项 A.不存在 B.存在 C.知道 D.不知道
面试我的那个人应该是个项目经理,看到我这题选了A 惊讶的问我这存在么? 我就说会产生溢出他还是不甘心。面到一半的时候,问道数据库了删除重复数据sql语句,然后叫来了另一个人面我,上来就问我对Erlang有没有兴趣,学习一门新的语言看法。我就GG了,我是来面试java的你半途问我愿不愿意去做Erlang,虽然听上去很流弊,服务器开发,专门处理高并发 中途还接了两次电话。他说我要的薪资还能接受,看你java基础还行,sql写的也不错,各种夸我,我也是醉了.......问我是否愿意。然后我就没兴趣了,说过两天给他答复吧
大家说这种面试你是奔着java开发去的,结果半路杀出来个Erlang 让你你能接受么?
解决方案
同样,问你Erlang也很能看出你的层次。代码民工或者培训班学员往往视野狭窄,这些人后期的培训成本是很高的。Erlang是一种很著名的函数式编程语言,对于一个Java程序员,多少是了解的。再说,Java 8乃至Java 9的发展趋势是,Java在往函数式编程语言靠拢。如果你有Erlang的基本知识,可以说明你有这么几个优势:
(1)你热爱学习,除了工作中分内的知识以外,你还愿意学习别的东西。这是一个程序员起码的修养。
(2)你适应能力强,并且视野开阔,可以胜任那些关键的研发任务。并且潜力比较大。
解决方案二:
是否存在一个数 使得 i+1<i ()
这个题目拿来问面试者,我觉得很好。面试的题目不同于考题,没有正确答案一说。而是考察面试者在什么层次。
当然,你说不知道,这个最简单,你啥也不会,属于最低层次。
如果你用整数符号位溢出来证明。这说明你有一点编程知识,但是缺乏概念,属于知其然不知其所以然的。你把数字在计算机中的表示法和数字本身混为一谈了。
回答不存在的。说明你概念很清楚。这样的人即便不懂编程,也非常容易培养。如果你能补充说明符号位溢出,那么说明你不但概念清楚,而且懂编程。那当然是最好的。
解决方案三:
你应该坦白跟他讲清楚
解决方案五:
是否存在一个数 使得 i+1<i ()
对于一个程序员来说,特别是面试,我觉得首先想到就应该是溢出产生和“自然世界的规则”不一样的效果,毕竟我们工作的是“计算机世界”