1. 常用的进制有那些?
2进制,8进制,10进制,16进制
2.如果将10进制转换为2进制数据?
正常算法是“除2取余,逆序排列法”,这个自然不用多说。
本人日常口算习惯:32 16 8 4 2 1 比如55=32+16+4+2+1,则(11 0111)
3. 位、字节、字符的概念及其计数范围?
1byte=8bits
4. 标识符的作用是什么?
java标识符是用来给类、对象、方法、变量、接口和自定义数据类型命名的!
5. 这个标识符合法吗? int aaa@bbb = 33;
1、标识符由大小写字母, 下划线, 数字, $符号组成.
2、开头可以是大小写字母, 下划线,和$符号.(数字不能开头)
3、标识符长度没有限制
4、标识符不能是关键字和保留字
标识符的命名最好能反映出其作用 ,java语言对字母的大小写有严格的要求.
所有自定义标识符需全部遵循标识符的命名规范.
6. 标识符能不能使用汉字开头?为什么?
很显然没有报错,能
标识符所指的字母:是广义的字母,Unicode字符集,所以用中文也不会报错
7. Java中有没有goto语句?有没有goto关键字?
goto这个词是C语言中的,goto语句通常与条件语句配合使用,可用来实现条件转移, 构成循环,跳出循环体等功能。
而在结构化程序语言中一般不主张使用goto语句, 以免造成程序流程的混乱,使理解和调试程序都产生困难。但是在java语言中,goto这个词只是作为了保留字,还没有使用。那是因为java语言讲究简单,方便。
8. byte,short,int,long类型,分别占用几个字节?表数范围多大?
byte | short | Int(float) | double(double) | |
字节 | 1 | 2 | 4 | 8 |
表数范围 | -128-127 | -32768`32767 | -3.423E38~3.423E38 | -1.798E308~1.798E308 |
9. 整型常数默认是什么类型?
int类型
10. float,double分别占用几个字节?
4,8
11. 用科学计数法来表示3.14?
314e-2
12. 浮点常量默认是什么类型?
double
13. 以下有那些不对?
a. byte b = 30;
b. byte c = 500;
c. long d = 2343223;
d. float f = 3.14;(浮点常量默认类型为double)
14. 浮点数能用于比较嘛?下面可能打印什么结果:
输出结果为d1==d2 float类型最大值为4.23432416E8
15. 字符型变量几个字节? 这种写法对不? char c = "d"?
字符型变量占2个字节,应该为char c=‘d’;
16. 布尔型变量占用空间是一位还是一个字节?
布尔型变量占一位(默认值为false)
17. 这种写法好不好? if(b==true)?
不好,应写为if(b)
18. 常量的声明使用哪个关键字?
常量的声明使用的关键字是final
19. 常量的命名规范是?
全部由大写字母组成,单词间通过下划线来界定
20. 解释一下,驼峰原则?
当变量或函数名称需要由多个英文单词组成时,每个英文单词的首字母要大写,但第一个单词的首字母可大写,也可以不大写
这样一个变量或函数名看起来就像驼峰一样起起伏伏,可以提高代码的可读性
21. 使用Scanner接收键盘输入,是否一定要加import Java.util.*;
需要导包
也可以写为import java.util.Scanner;
22. 解释一下,驼峰原则 类名的命名规则是?方法名、变量名的命名规范是否一致?常量的命名规则是?
类的命名规则:每个英文单词的首字母都大写
方法名、变量名的命名规则:第一个单词首字母小写,从第二个单词后,每个单词的首字母大写
常量的命名规则:字母全部大写
23. 引用类型是占用几个字节?
引用数据类型占4个字节,用于存储对象的引用
24. 算术运算符中类型提升是怎么回事?a+b返回什么类型?int a = 3;long b=3;
类型提升指的是自动类型转换
a+b返回的是long类型
类型转换:(1)赋值:
自动转换:byteb=10;
Int n=b;
强制转换:intn=10;
Byte b=(byte)n;
(2)算术运算:数据类型提升;
25. i++和++i的异同之处
1,直接比较这两个式子没区别,都等价于i=i+1
2,用于赋值预算 i++:先使用i,在进行i=i+1; ++i:先进行i=i+1,再使用i。
26. 关系运算符中,能不能这么写:"1<a<3"?
不能,
应该写为a>1&&a<3
27. 逻辑运算符|、&、!、^的含义及其运算规则?
| 或: 只要有一个为true,则直接返回true
& 与: 只要有一个为false,则直接返回false
! 非: 如果为true,则返回false,如果为false,则返回true
^ 异或: 如果两个操作数相同,则返回false,如果两个操作数不同,则返回true
28. 运算符||和|的异同之处
相同:
|| 与 | 都是逻辑运算符,运算规则都为只要一个为ture,则直接返回true
不同:
|| 短路或 : 从左到右计算,如果符号左边的操作数为true,则不会继续计算,直接返回 true; 如果符号左边的操作数为false,则需要继续计算
| 逻辑或:操作数左右两边的操作数都需要计算,不会发生短路
|| 只是逻辑运算符
| 还可以是位运算符中的按位或符号
29. 5*4最快的运算方式是?
位运算 5<<2
30. 这两个表达式分别返回什么结果? ((1<3)?"a":"b")+3+4, x=-2; x > 0 ? 1 : (x == 0 ? 0 : -1)
a34,-1
31. 什么情况下,加号会变成字符串连接符?
“+”号左右一个为String类型时,则变成字符连接符
32. 4&5,4|5的结果分别是多少? 4&&5这个操作可行吗?为什么?
4,5 不可行 && 左右要求为boolean类型
33. int能否自动转换成byte,short,char? 是否有一定条件才能转换?
不能,强制转换
34. long能自动转换成int吗?long能自动转换成float吗?
Long不能自动转成int
long可以自动转成float
float:4
long:8:
float的表数范围比long大;
35. 自动类型转换中,容量小和容量大指的是什么意思?
容量大小指的是不同数据类型的存储数据的范围
36. 强制类型转换中,是否可能发生数据丢失?
只能说可能不能说一定
强制转换格式 type 变量 = (type)变量
37. 布尔类型能否自动转换为int? 如果不能,简述理由。
不能 类型不匹配
38. 下面两种写法,哪个较好:
a. 70L*60*24*365*70*20
b. 70*60*24*365*70*20L
a的写法好;
b乘积会超过int的取值范围,会导致精度损失