1. 程式人生 > 其它 >Java基礎面試題第二天

Java基礎面試題第二天

Java基礎面試題第二天

補充:
boolean型別佔多少個位元組:
java規範中,沒有明確指出boolean的大小。在《Java虛擬機器規範》給出了4個位元組,和boolean陣列1個位元組的定義,具體還要看虛擬機器實現是否按照規範來,所以1個位元組、4個位元組都是有可能的。

ASCII碼錶常見編碼

 'A' -- 65  'a' -- 97  '0' -- 48
 筆試題:‘x’ + 10 =?
 'a' = 97, a+23  = 'x' = 120
 ‘x’ + 10 = 120 + 10 = 130

'A' + 10 結果是什麼型別資料,數值結果為多少?將計算結果再轉換成char型別,對應的字元結果為多少?


int型別,K

除法運算,如果符號兩端都是整數型別, 結果還是整數型別

System.out.println(5 / 3);

取餘運算經典題

1)獲取個、十、百、千位上的數

package com.tohka;

public class Demo2 {
    public static void main(String[] args) {
        int num = 4321;
        //求個位的數直接對取餘10
        int ge = 4321 % 10;
        System.out.println(ge);
        //求十位,除以10,在取餘10
        int shi = 4321 / 10 % 10;
        System.out.println(shi);
        //求百位 取餘100 再取餘10
        int bai = 4321 / 100 % 10;
        System.out.println(bai);
        //求千位,直接除以最高位(千位)
        int qian = 4321 / 1000;
        System.out.println(qian);
    }
}

2)定於兩個字元,判斷這兩個字元是否是字母

package com.tohka;

public class Demo5 {
    public static void main(String[] args) {
        //定於兩個字元,判斷這兩個字元是否是字母
        char a = 'A';
        char b =  48;
        String flag1 = a >= 65 && a<=90 || a >=97 && a<= 122 ? "字母" :"不是字母";
        System.out.println(flag1);
        String flag2 = b >= 65 && b<=90 || b >=97 && b<= 122 ? "字母" :"不是字母";
        System.out.println(flag2);
    }
}

3)列舉所有的“四葉玫瑰數”,並統計四葉玫瑰數的個數

(四葉玫瑰數: 是一個四位數,各個位的數字的四次方的和,為該數字本身)

package com.tohka;
/*列舉所有的“四葉玫瑰數”,並統計四葉玫瑰數的個數
        (四葉玫瑰數: 是一個四位數,各個位的數字的四次方的和,為該數字本身)*/
public class Demo10 {
    public static void main(String[] args) {
        int count = 0;
        for (int i = 1000; i<=9999; i++) {
            int ge = i % 10;
            int shi = i / 10 % 10;
            int bai = i /100 % 10;
            int qian = i /1000;
            if(ge * ge * ge * ge+shi *shi *shi *shi+bai*bai*bai*bai+qian*qian*qian*qian ==i) {
                count ++;
                System.out.println(i);
            }
        }
        System.out.println(count);
    }
}