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); } }