首页 > 其他 > 详细

面试二 笔试

时间:2019-11-22 15:39:44      阅读:84      评论:0      收藏:0      [点我收藏+]
  • 烧一根不均匀的绳子,从头到尾总共需要1个小时.现有若干条材质相同的绳子.如何用烧绳的方法来计时一个小时十五分钟

    用一根绳子2头点燃,同时另取一根绳子点燃
    当第一根绳子燃烧完,即为半小时,这时第二根绳子的另一头点燃,并开始计时.
    则从计时开始到第二根绳子燃烧完用时十五分钟.
    再取一根绳子点燃,直至这根绳子燃烧完,计时结束.
    则总计时开始的那刻开始到计时结束,用时1小时15分钟,可以此来计时.

     

  • 一个岔路口分别通向诚实国和说谎国。来了两个人,已知一个是诚实国的,另一个是说谎国的。诚实国永远说实话,说谎国永远说谎话。现在你要去说谎国,但不知道应该走哪条路,需要问这两个人。请问应该怎么问?
    注意:只能有一次提问机会,单独问一人和一起问都可以。
    你可以同时向两个人问:“请你们把你们各自来的路告诉我是那一条?”
    诚实国的人肯定指出的是自己国家的路,而相反的来自说谎国的那个人一定也会指向诚实国的路
    所以你只要走向没有被指的路,肯定可以到达说谎国。

     

  • 面向对象理解;最常见5个runtimeException();
     3大核心:封装 继承 多态
    exception:NullPoint  ClassCast  ClassNotFount IndexOutOfBounds  NumberFormat

     

  • 多线程几种实现方法? 同步有几种实现方式?
    4种:
        1.创建子类继承Thread类(Thread类实现了Runable接口)并重写run()方法(无返回值),通过子类实例调用start()方法启动;
        2.通过实现Runable()接口并重写run()方法(无返回值),start()方法启动;
        3.创建子类实现Callable()接口,并重写call()方法,提供了2个额外功能:call()方法可以有int返回值call()方法可以声明抛出异常,  由Callable子类对象创建一个FutureTask对象,由FutureTask对象创建一个Thread对象。
        4.通过线程池Executor框架创建
    方式:
    1.同步方法;2.同步代码块;3.使用特殊域变量(volatile)实现线程同步;4.使用重入锁实现线程同步;5.使用局部变量实现线程同步 。

     

  • 随机生成5位验证码,包括数字字母。
    public static void main(String[] args) {
            String str = "";
            Random rand = new Random();
            for(int i=0;i<5;i++){
                int num = rand.nextInt(3);
                switch(num){
                    case 0:
                        char c1 = (char)(rand.nextInt(26)+a);//生成随机小写字母 
                        str += c1;
                        break;
                    case 1:
                        char c2 = (char)(rand.nextInt(26)+A);//生成随机大写字母 
                        str += c2;
                        break;
                    case 2:
                        str += rand.nextInt(10);//生成随机数字
                }
            }
            System.out.println("生成的5位随机验证码是:"+str);
        }

     

  • 递归算法题,第一个人10,第2个比第1个人大2岁,依次递推,请用递归方式计算出第8个人多大?
    public static int old(int num) {
            if (num == 1) {
                return 10;
            } else {
                return 2 + old(--num);
            }
    
        }

     

  • 编写一个程序,将d:\java目录下的所有.java文件复制到d:\jad目录下,并将原来文件的扩展名从.java改为.jad
  • 子线程循环10次,接着主线程循环15次,接着又回到子线程循环10次,接着再回到主线程又循环15次,如此循环50次。

面试二 笔试

原文:https://www.cnblogs.com/ityangshuai/p/11911714.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!