zoukankan      html  css  js  c++  java
  • 刚写完排序算法,就被开除了…

    刚写完这段代码,就被开除了……

    栈长前些天刚写完上面这篇文章,没几天,又来一个悲剧。。。

    据说是一个月薪 9K 的 Java 程序员,因老板让他写一个排序算法,然后他就写了一段屌炸天的休眠排序算法,接着他就被老板开除了……

    排序算法代码大概是这样的:

    这段代码有什么问题?

    这个程序员更屌啊,数字排序,用一行简单的 Arrays.sort 就搞定的东西,他竟用到了这么多概念。

    1、循环

    2、线程休眠

    3、多线程

    下面贴上完整的代码:

    /**
     * 微信公众号:Java技术栈
     */
    public class ArraySort implements Runnable {
    
        private int number;
    
        public ArraySort(int number) {
            this.number = number;
        }
    
        public static void main(String[] args) {
            int[] numbers = new int[]{102, 338, 62, 9132, 580, 666};
            for (int number : numbers) {
                new Thread(new ArraySort(number)).start();
            }
        }
    
        @Override
        public void run() {
            try {
                Thread.sleep(this.number);
                System.out.println(this.number);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    
    }
    

    还好是数字小啊,还好休眠是毫秒啊,要是数字大,要是休眠时间是秒,那要等多少休眠时间才能排序完?

    按道理,他的程序也没问题啊,老板为什么要开除他?应用程序中出 BUG 不是很正常的事吗?但他这种排序思维,能写出这样的隐藏 BUG 也是绝了,创造性的发明了 “休眠排序” 算法,系统里面还不知道有多少这样的坑,不开除他开除谁啊?

    或许他应该看一下排序这篇文章:《图文带你了解 8 大排序算法》。

    说到这个程序员,让我想起了最近审查代码时候的几个坑,真是让人哭笑不得。。。

    示例1:

    if(flag  == false){
        return true;
    } else {
        return false;
    }
    

    直接 return flag 不行?写这么绕,还把逻辑写错了。

    示例2:

    if(...)
        a
        b
        c
    

    多段代码,if 不加 {},后面格式化成了:

    if(...)
        a
    b
    c
    

    这样导致业务逻辑有严重的 BUG,无语了吧?还有更多奇葩的,栈长审查代码真心累。。。

    你还见过哪些更奇葩的代码?欢迎留言分享一下。

    有共同兴趣志向的,都可以关注博主的公众号:Java技术栈(id:javastack)。

    本文原创首发于微信公众号:Java技术栈(id:javastack),转载请原样保留本信息。

  • 相关阅读:
    javaScript对象
    javaScript基础
    使用javaScript和JQuery制作经典面试题:光棒效果
    Animate自定义动画
    使用jQuery快速高效制作网页交互特效
    jQuery中绑定事件bind() on() live() one()的异同
    小笔记1(Get请求)

    this关键字
    Eclipse断点调试(下)
  • 原文地址:https://www.cnblogs.com/java-stack/p/11952393.html
Copyright © 2011-2022 走看看