V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
miemiekurisu
V2EX  ›  程序员

sigh...现在的孩子....

  •  
  •   miemiekurisu · 2015-09-15 18:00:45 +08:00 · 7259 次点击
    这是一个创建于 3386 天前的主题,其中的信息可能已经有所发展或是发生改变。

    sigh...现在的孩子都怎么了...

    能给我写出

    其一:
    StringUtils.isEmpty (<这里是个 Integer>+"")

    其二:
    long v1;
    long v2;
    int amount = (int )((int )(maxValue-minValue ));

    这种代码出来....

    我总怀疑最近几年基础教育质量是不是变差了, 这明显不仅仅是吃多 /喝多 /睡过头的表现,
    还是编译器太聪明了, 语法糖太好吃了?

    第 1 条附言  ·  2015-09-15 22:35:04 +08:00
    其二手滑点了提交, 其实其二的代码是这样的
    long v1=xxx;
    long v2=xxx;
    int amount = (int )((int )(v1-v2 ));
    69 条回复    2015-09-17 10:23:05 +08:00
    dorentus
        1
    dorentus  
       2015-09-15 18:23:53 +08:00 via iPhone
    你要相信,很多来应聘程序员的人其实并不会编程,然后你就会释然了
    jas0ndyq
        2
    jas0ndyq  
       2015-09-15 19:09:47 +08:00
    孩子?您很老了么
    miemiekurisu
        3
    miemiekurisu  
    OP
       2015-09-15 19:12:26 +08:00 via Android
    @jas0ndyq 不要淡定的陈述这种令人悲伤的事实啊喂 QAQ
    jukka
        4
    jukka  
       2015-09-15 19:13:53 +08:00
    - -#。助手,来我身边。
    zerh925
        5
    zerh925  
       2015-09-15 19:20:47 +08:00
    不是自己招的?
    wezzard
        6
    wezzard  
       2015-09-15 19:25:32 +08:00
    Objective-C 變量聲明自動初始化爲 0 是 clang 特性還是 Objective-C only 的編譯規則?
    feikaras
        7
    feikaras  
       2015-09-15 19:30:35 +08:00
    @jukka 噗嗤。来的是克里斯汀娜还是米沙啊
    jjgod
        8
    jjgod  
       2015-09-15 19:33:56 +08:00
    @wezzard: 你想说成员变量初始化为 0 吧?
    w99wen
        9
    w99wen  
       2015-09-15 19:40:25 +08:00
    虽然好久没搞 java 了,这些还是看的我笑了。
    感谢楼主的笑话。。
    wezzard
        10
    wezzard  
       2015-09-15 19:40:34 +08:00
    @jjgod 不僅僅是成員變量初始化爲 0 哦。函數裏面的也行的。
    ck65
        11
    ck65  
       2015-09-15 19:45:59 +08:00   ❤️ 1
    借题。
    培训班的孩子要不得。要也只能要在培训班里就被视为大神的那一两个。
    jjgod
        12
    jjgod  
       2015-09-15 19:46:01 +08:00
    ljbha007
        13
    ljbha007  
       2015-09-15 19:46:25 +08:00
    同感
    depress
        14
    depress  
       2015-09-15 19:56:12 +08:00
    楼主,知足吧,第一个能用 StringUtils 没用等号判断空已经很不错了...不过第二个我怎么觉得他是想给你一个惊喜呢哈哈哈
    w99wen
        15
    w99wen  
       2015-09-15 20:10:30 +08:00
    @jjgod 现在流行不开 arc ?
    我现在都是默认开 arc 的。感觉自己手动控制太蛋疼了。
    上一个项目是不开的。写 release 写的要死。
    miemiekurisu
        16
    miemiekurisu  
    OP
       2015-09-15 20:11:53 +08:00
    居然没人吐糟 long 转 int 么...
    miemiekurisu
        17
    miemiekurisu  
    OP
       2015-09-15 20:14:33 +08:00
    @zerh925 不是. 不过我觉得这应该是常识...
    数值包装类+""靠编译器强转 String
    long 强转 int 相加无视 warning 什么的....
    viator42
        18
    viator42  
       2015-09-15 20:17:33 +08:00
    加空字符串转换类型.Integer.toString ()就行了.
    真不知道还有这么机智的方式
    undeflife
        19
    undeflife  
       2015-09-15 20:18:15 +08:00
    @wezzard c 的话 如果是定义的全局变量或者静态变量,是 0. 如果是局部变量则是残留在栈里的随机值
    Cloudee
        20
    Cloudee  
       2015-09-15 20:24:50 +08:00 via iPhone
    Integer 转 string 出不了空串吧...这个判断到底是在干什么
    zmj1316
        21
    zmj1316  
       2015-09-15 20:29:37 +08:00
    LZ 大惊小怪了,我见过 C++写:
    class Class{...};
    fun
    {
    Class class;
    ...
    }这种的
    miemiekurisu
        22
    miemiekurisu  
    OP
       2015-09-15 20:29:53 +08:00
    @viator42 JDK 1.5 前是个编译时错误. 会发生不可预期的数据或情况.
    wezzard
        23
    wezzard  
       2015-09-15 20:30:26 +08:00
    @jjgod 確實基本沒關過 ARC ,唯一一次關 ARC 還是不得不依靠規避 retain 和 release 來壓榨性能的場合。

    @w99wen 你看他的工作場所就應該知道了, UIKit , QuartzCore 裏面直到不久前都是一堆 retain 。
    miemiekurisu
        24
    miemiekurisu  
    OP
       2015-09-15 20:30:45 +08:00
    @depress Integer 为 null 的时候直接跪....
    miemiekurisu
        25
    miemiekurisu  
    OP
       2015-09-15 20:32:27 +08:00
    @zmj1316 ....他写的时候真的知道自己在写什么吗? =w=
    dangge
        26
    dangge  
       2015-09-15 20:59:50 +08:00
    看看我那群上机只会打 CS 的同学 我倒是觉得不奇怪
    twor2
        27
    twor2  
       2015-09-15 21:16:50 +08:00
    表情很到位
    pelloz
        28
    pelloz  
       2015-09-15 21:19:07 +08:00
    楼主你让他去多修复几次这种代码引起的 BUG 就好了..让他自己吐出来的翔自己吃掉。
    hptcyhj
        29
    hptcyhj  
       2015-09-15 21:20:41 +08:00
    只是命运石之门的选择而已,楼主别太在意。
    shawngao
        30
    shawngao  
       2015-09-15 21:21:39 +08:00 via iPhone
    当楼主祭出 sigh..... 的时候,我相信楼主确实和我一样或者比我老,当年校园 BBS 很常见
    gamexg
        31
    gamexg  
       2015-09-15 21:41:55 +08:00
    明显对编程没有概念,近乎完全无基础啊。
    msg7086
        32
    msg7086  
       2015-09-15 21:49:31 +08:00
    @pelloz 这么自信翔不会增殖?
    wezzard
        33
    wezzard  
       2015-09-15 21:52:40 +08:00 via iPhone
    @msg7086 增殖居然用對了
    bengol
        34
    bengol  
       2015-09-15 22:11:21 +08:00 via Android
    多解解 bug 就好了
    miemiekurisu
        35
    miemiekurisu  
    OP
       2015-09-15 22:17:19 +08:00 via Android
    @ck65 培训班我就忍了,其一的开发经验是 2 年,其 2 的开发经验是 3 年。
    letterJump
        36
    letterJump  
       2015-09-15 22:25:25 +08:00
    那个 long v1 v2 什么意思, 怎么出一次场后面就没了
    miemiekurisu
        37
    miemiekurisu  
    OP
       2015-09-15 22:35:20 +08:00
    @letterJump 多谢提醒, 手滑
    wohenyingyu01
        38
    wohenyingyu01  
       2015-09-15 22:43:37 +08:00   ❤️ 1
    boolean a=xxx;
    if (a ) a=true;
    else a=false;

    a==b?a:b
    bdbai
        39
    bdbai  
       2015-09-15 22:55:23 +08:00 via iPhone
    @wohenyingyu01 三元耍得漂亮 这个 x 我给满分 哈哈哈
    archer2ee
        40
    archer2ee  
       2015-09-15 23:14:41 +08:00
    看见助手怒答。

    写成这样的极有可能不是 CS 出身,而且对编码看不过有半点兴趣。。

    PS:其一代码没分号,其二最后代码是不是多了一个“)”,逃~~~
    archer2ee
        41
    archer2ee  
       2015-09-15 23:16:02 +08:00
    更正:其二中代码正常,(逃~~~
    lufyluo
        42
    lufyluo  
       2015-09-15 23:25:38 +08:00
    记得以前我连 long 是什么玩意都不知道,但当时我很喜欢编程,觉得能自己写程序的人都 NB ,所以我走进了码农世界。。。。。这里个人觉得,既然招了实习生或招了刚出道,能带一下就带一下,大家出来打工不容易。
    nellace
        43
    nellace  
       2015-09-16 08:43:46 +08:00
    为什么我觉得 v1v2 这种命名的谭浩强教出来的呢
    miemiekurisu
        44
    miemiekurisu  
    OP
       2015-09-16 09:24:07 +08:00
    @nellace v1 v2 是我改的, 为了看起来清楚些, 糟点真心不在这里....
    miemiekurisu
        45
    miemiekurisu  
    OP
       2015-09-16 09:27:53 +08:00
    @lufyluo 嘛...所以第一次见的时候我只是感慨一下现在的教育质量...一而再再而三就要开骂了
    jadecoder
        46
    jadecoder  
       2015-09-16 09:32:42 +08:00
    @miemiekurisu 所以槽点是转了两次 int 吗?
    popo233
        47
    popo233  
       2015-09-16 09:33:32 +08:00
    写 js 的表示经常+''转字符串 (逃
    miemiekurisu
        48
    miemiekurisu  
    OP
       2015-09-16 09:39:07 +08:00
    @jadecoder 看来汝也欠调教(蜡烛皮鞭~
    jasonding
        49
    jasonding  
       2015-09-16 09:40:50 +08:00
    不要黑培训班啊,我也是培训班出来的。但是至少不会写出这种奇葩代码
    neutrino
        50
    neutrino  
       2015-09-16 09:46:38 +08:00
    long 和 int 一般都是 4 字节吧……没区别不用转
    anubiskong
        51
    anubiskong  
       2015-09-16 09:48:42 +08:00
    所以说面试别再问闭包继承面向对象了, 直接上机, 看着他写几句代码立马知道水平了
    laoyur
        52
    laoyur  
       2015-09-16 09:51:21 +08:00
    @neutrino long 在 64bit 上是 8 字节的
    neutrino
        53
    neutrino  
       2015-09-16 10:09:42 +08:00
    @laoyur An int and a long are 32-bit values on 64-bit Windows operating systems. For programs that you plan to compile for 64-bit platforms, you should be careful not to assign pointers to 32-bit variables. Pointers are 64-bit on 64-bit platforms, and you will truncate the pointer value if you assign it to a 32-bit variable.
    timonwong
        54
    timonwong  
       2015-09-16 10:23:11 +08:00
    @neutrino java 的 long 就是 64 字节
    timonwong
        55
    timonwong  
       2015-09-16 10:23:37 +08:00
    @timonwong 修正 java 的 long 就是 64 bit...
    jadecoder
        56
    jadecoder  
       2015-09-16 10:29:59 +08:00
    @miemiekurisu 那为什么要转两次?
    simo
        57
    simo  
       2015-09-16 10:37:38 +08:00
    弱类型语言才是最好的语言
    safilar
        58
    safilar  
       2015-09-16 10:40:48 +08:00
    楼主,第一种写法是完全没有问题的(我是值 int + "" 转字符串,你的代码没上下文,不好判断),其次为 null ,那是空指针的问题。这完全是代码风格的问题。 @miemiekurisu
    laoyur
        59
    laoyur  
       2015-09-16 11:02:24 +08:00
    bk201
        60
    bk201  
       2015-09-16 11:02:28 +08:00
    第一行 其实我也经常这么用,实在是快捷,但是判断是否为空没看出有什么意义。
    第二行 如果之间差距不大,转问题也不是很大。不了解是不是 amout 需要为 int
    luo362722353
        61
    luo362722353  
       2015-09-16 11:37:04 +08:00 via Android
    miemiekurisu
        62
    miemiekurisu  
    OP
       2015-09-16 11:58:54 +08:00 via Android
    @safilar 弱类型语言我也这么写,不过这个是 Java ,不是说不可以,只是说有隐患。
    hahastudio
        63
    hahastudio  
       2015-09-16 12:32:06 +08:00
    -语法糖超甜的,你有什么不满么-
    LoliconInside
        64
    LoliconInside  
       2015-09-16 13:27:17 +08:00
    噗噗 助手你真相了
    sheep42
        65
    sheep42  
       2015-09-16 16:15:24 +08:00
    @LoliconInside 围观你俩 哈哈哈哈
    oska874
        66
    oska874  
       2015-09-16 16:19:14 +08:00
    @miemiekurisu 很好奇,为啥要转两次,一个( int ) 不就够了?
    geew
        67
    geew  
       2015-09-16 16:34:42 +08:00
    区区一个助手而已....
    hitmanx
        68
    hitmanx  
       2015-09-16 18:48:03 +08:00
    long v1=xxx;
    long v2=xxx;
    int amount = (int )((int )(v1-v2 ));

    没看懂,这个点在哪?是多转型了一次还是在一些老的平台上 long 和 int 长度不一样会被截断?
    0xvul
        69
    0xvul  
       2015-09-17 10:23:05 +08:00
    智商问题。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2805 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 11:46 · PVG 19:46 · LAX 03:46 · JFK 06:46
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.