JavaRush /จาวาบล็อก /Random-TH /ปัญหาตรรกะในการสัมภาษณ์
Юрий Кузнецов
ระดับ
Москва

ปัญหาตรรกะในการสัมภาษณ์

เผยแพร่ในกลุ่ม
คุณต้องวิเคราะห์ปัญหาตรรกะ 5 ข้อบวกกับปัญหา Java 4 ข้อจากฉัน ปัญหาที่พบในระหว่างการสัมภาษณ์และแนวทางแก้ไขมีอยู่ในอินเทอร์เน็ต ฉันจะให้รายชื่ออันดับต้นๆ ของผู้ที่ฉันพบระหว่างการสัมภาษณ์ ปัญหาตรรกะในการสัมภาษณ์ - 1
  1. สี่คนสวมหมวก

  2. ปัญหาเกี่ยวกับสะพานและไฟฉาย

  3. จากทั้งหมด 9 เหรียญ มีเหรียญหนึ่งเป็นของปลอม: มันเบากว่า จะค้นหามันด้วยการชั่งน้ำหนักสองครั้งบนตาชั่งได้อย่างไร?

  4. เกือบจะเหมือนกับปัญหาก่อนหน้านี้มีเพียงตาชั่งเท่านั้นที่สามารถเป็นได้ ปัญหา “ยาเม็ด 5 กระปุก” .

  5. "รถไฟไม่มีที่สิ้นสุด"

เพื่อครอบคลุมคำถามที่ถูกถามระหว่างการสัมภาษณ์:

  1. เขียนหลายวิธีในการนำซิงเกิลตันไปใช้งานใน java

  2. จะเกิดอะไรขึ้นในรหัสนี้?

    ปัญหาตรรกะในการสัมภาษณ์ - 2
    class MyExc1 extends Exception{}
    class MyExc2 extends Exception{}
    class MyExc3 extends Exception{}
    
    public class Test {
        public static void main(String[] args) throws Exception {
            try {
                System.out.print(1);
                p();
            }catch (MyExc2 e){
            }
            finally {
                throw new MyExc3();
                System.out.print(2);
            }
        }
        public static void p() throws Exception {
            try {
                throw new MyExc1();
                 } catch (MyExc1 myExc1) {
                throw new MyExc2();
            }finally {
                System.out.println(3);
            }
        }
    }
  3. ปัญหาจากฉันเพราะฉันจำไม่ได้ว่ามีตัวอย่างอะไรบ้าง

    public class Test {
        public static void main(String[] args)  {
            String s = "Hello";
            String s1 = "Hello";
            String s2 = new String("Hello");
    
            System.out.println(s == s1);
            System.out.println(s1 == s2);
    
            Integer i = 111;
            Integer i1 = 111;
            Integer i2 = new Integer(111);
            Integer i3 = new Integer(111);
    
            Integer i4 = -129;
            Integer i5 = -129;
            Integer i6 = new Integer(-129);
    
            System.out.println(i == i1);
            System.out.println(i1 == i2);
            System.out.println(i2 == i3);
    
            System.out.println(i4 == i5);
            System.out.println(i5 == i6);
    
            System.out.println(i6 == -129);
        }
    }
  4. การรันโปรแกรมจะส่งผลอย่างไร? แล้วเราจะได้ผลลัพธ์อะไรถ้าเราไม่ใส่เครื่องหมายสองบรรทัดสุดท้าย?

    class Test{
        private int id;
        private Integer id2;
    
        public Test(int id, Integer id2) {
            System.out.println("Создаем екзепляр Test");
            this.id = id;
            this.id2 = id2;
        }
    
        public Integer doIt(){
            return id + id2;
        }
    }
    class Test1{
        private Test test;
        private static int i;
    
        public Test1() {
            System.out.println("Создаем екзепляр Test1");
            this.test = new Test(i, 10);
        }
        public Test getTest() {
            return test;
        }
    }
    
    class Main {
        public static void main(String[] args)  {
            Test1 test1 = new Test1();
            System.out.println(test1.getTest().doIt());
           // Test test = new Test(null, 1);
           // test.doIt();
        }
    }
    ปัญหาตรรกะในการสัมภาษณ์ - 3
PS: คำตอบสำหรับปัญหาตรรกะทั้งหมดสามารถพบได้บนอินเทอร์เน็ต สำหรับผู้ที่สนใจ ฉันกำลังแนบโพสต์ก่อนหน้าเกี่ยวกับการสัมภาษณ์นักพัฒนา Java
ความคิดเห็น
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION