Java基礎面試題第二天
阿新 • • 發佈:2021-07-13
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);
}
}