欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java入门 Day002

程序员文章站 2022-04-05 10:01:30
...

1:什么是关键字?有什么特点?

关键字就是被Java语言赋予特定意义的单词,比如:class、public等。
特点:字母全为小写,在一些高级的编辑器里会显示特殊的颜色标记,比如在 notepad++、eclipse中。

2:什么是标识符?由哪些部分组成?常见的命名规则有哪些?

给类(class),接口(interface),方法,变量起名字的字符序列
组成规则:
A:英文字母(区分大小写)
B:下划线_
C:$符号
D:数字0-9

(1)给类,接口命名规则:
单个单词:首字母大写,其余小写(小驼峰命名) 比如:Hello
多个单词:每个单词的首字母都大写,其余单词小写(大驼峰命名) 比如:HelloWorld
(2)给变量,方法命名规则:
单个单词:字母全部小写 举例:check()
多个单词:首字母小写,后面每个单词首字母大写 举例:checkUserName()
(3)给常量命名的规则:
单个单词:字母全部大写 举例:CONSTANT、PI.
多个单词:字母全部大写,中间使用下划线隔开
举例:HEELO_WORLD
注意事项

  • 不能以数字开头 、 如:int 2a=10;
  • 不能是java中的关键字、 如:int public=20;
  • 严格区分大小写 如:int Public=20;

3:什么是常量?常量的分类?字面值常量表现形式有哪些?

常量是在程序的执行过程中其值不发生改变的量,是固定不变的。
常量分为两种:
1)字面值常量 例如println输出的语句中双引号引起来的内容,这些在最后是不会发生改变的。
常量分为六种:

  • 字符串常量(”helloworld”)
  • 整数常量(20)
  • 小数常量(3.14、-3)
  • 字符常量(‘A’)注:必须是单个字符
  • 布尔常量(true、false)
  • 空常量。

2).自定义常量

**

4:计算出十进制46对应的二进制,八进制,十六进制的值。

**
46/2=23 余 0;
23/2=11 余 1;
11/2=5 余 1;
5/2=2 余 1;
2/2=1 余 0;
1/2=0 余 1;
二进制为:0b101110
46/8=5 余 6
5/8=0 余 5
八进制:056
46/16=2 余14(e)
2/16=0 余 2
十六进制:0x2e

5:什么是变量?变量的定义格式?要使用变量需要注意什么?

变量就是程序执行过程中,可以发生改变的量。
定义变量格式:数据类型 变量名 = 初始化值;
注意事项:使用变量注意变量的类型与初始化

6:Java中的数据类型分几类?基本数据类型有哪些?

数据类型分类:
A:基本数据类型 分为4类八种
a)整数

  • byte(字节类型) 1字节 范围 -128~127
  • short(短整型) 2 字节 范围 32768~32767 (-2^15 ~2^15-1)
  • int(整数默认int类型) 4字节 范围 -231~231-1
  • long(长整型) 8字节 范围-263~263-1

b)浮点数:

单精度:float 4字节
双精度:double 8字节
(浮点数默认double类型)
c)字符:char 2字节 范围 0~65535
d)布尔:Boolean 1 字节 true/false
B:引用数据类型(面向对象部分说)
注意事项
1)整数类型默认是int,如果需要用long类型的变量来接收数据,必须在变量值的后面加上l或者L(建议L)
2)浮点类型默认是double,如果使用float类型变量,变量值加上标记f或者F(建议F)

7:数据类型转换:

隐式转换:Java中变量的隐式转换(数据类型的默认类型提升)
byte,short,char---->int —>long—>float---->double
byte,short,char三者之间互相不转换,参与运算的时候,默认转换成int
boolean类型的数据不会转换的!
强制转换:目标数据类型 变量名 = (目标数据类型)(变量值) ;
如:byte a=3; int b=4;
byte c = (byte)(a+b);

8.面试题:

byte b=10,b2=12,b; b=b1+b2; b=10+12; 哪句是编译失败的呢?为什么呢?

答:b=b1+b2会失败 ,b1+b2–>数据类型提升为int类型,int转为byte大转小会丢失精度,可以采用强制转换。
//b = b1+ b2 ;
//b1+b2----->数据类型提升 int类型
//b = (byte)(b1+b2);
注意:变量相加:想看当前进行计算的变量是否在取值范围之内,如果在,就执行运算(默认提升)
常量相加,最终看当前的结果是否在当前被接收的数据类型范围之内

byte by = 200;这个有没有问题?有,如何正确输出,结果怎么计算?

有,超出 byte的范围 -128—127,使用强制类型转化,结果是-56
十进制200的二进制为:1100 1000
Java入门 Day002

9:需求:已知OB10101101,求反码,以及补码

  已知补码OB10110010,求反码和原码!

二进制 10101101
反码:符号位不变:1 数值位取反1010010 --11010010
补码:符号位不变:1 反码+1 --11010011

  已知补码 10110010

反码为:10110010-1=10110001 //补码-1计算反码
原码为:11001110 //符号位不变,数值位取反。

10.字符、字符串、拼接符、ASCII码

ASCII码表
Java入门 Day002
关于字符单独使用的时候,不会找ASCII码表,但是一旦参与运算,就会在对应ASCII码表中寻找对应的固定值

  • 一个数是正整数
  • 运算符
  • 字符串拼接符号
class DataTypeDemo7{
	public static void main(String[] args){
		System.out.println('a'); 
		
		System.out.println('a'+1);//97+1
		
		int a = 10 ;
		int b = 20 ;
		System.out.println(a);
		System.out.println("a:"+a) ;//字符串+任何数据=字符串
		System.out.println("a:"+a+",b:"+b);
	}
}

Java入门 Day002

class DataTypeDemo8{
	public static void main(String[] args){
		
		System.out.println("hello"+'a'+1); //"helloa"+1 ="helloa1"
		System.out.println('a'+1+"hello"); //97+1+"hello"=98hello
		System.out.println("5+5="+5+5); //5+5=55
		System.out.println(5+5+"=5+5");//10=5+5
	}
}

结果:
Java入门 Day002

相关标签: Java入门