Java零基础学习(常量 变量 算数运算符)
Java零基础学习(2)
java语言基础
-
常量
1、常量是什么?常量的分类?字面值常量的分类?
(1)常量是在程序执行过程中,其值不发生变化的量;
常量分为字面值常量和自定义常量;
(2)字面值常量
a:整数常量(100 50 1);
b:小数常量(1.1 3.14 );
c:字符常量(用单引号引起来的单个字符)(‘1’ ‘a’ ‘你’ ‘ ’);
d:字符串常量(用双引号引起来的单个或多个字符)(“a” “abc” “ 你好” “hello world” );
e:布尔常量(true 真,对 false 假,错);
F:空常量(null)。
2、Java中针对整数常量有几种表现形式?各自的组成规则是什么?
答:有四种表现形式,分别是:
十进制数,直接写(100 20 5);
二进制数,在前面加0b(0b010111 0b10101110);
八进制数,在前面加0 (012 011 056);
十六进制数,在前面加0X(0X15A 0X10)。
-
进制转换
1.其他进制到十进制的转换是用位权展开法,每一位数乘以位权,然后相加。
2.十进制到其他进制转换是除基取余直到商为0,余数反转。
3.二进制到八进制的转换是从右往左三位为一组(如果在最左边时候无法凑够三位可以往最前面加0)
4.二进制到十六进制的转换是从右往左四位为一组(如果在最左边时候无法凑够四位可以往最前面加0)
-
原码反码补码的转换
1.原码(true form)是一种计算机中对数字的二进制定点表示方法。原码表示法在数值前面增加了一位符号位(即最高位为符号位):正数该位为0,负数该位为1,其余位表示数值的大小。
2.反码是数值存储的一种,多应用于系统环境设置,如linux平台的目录和文件的默认权限的设置umask,就是使用反码原理。在计算机内,定点数有3种表示法:原码、反码和补码。
3.在计算机系统中,数值一律用补码来表示和存储。原因在于,使用补码,可以将符号位和数值域统一处理;同时,加法和减法也可以统一处理。
A:正数的原码反码补码相同。
B:负数 原码→反码,逐位取反,符号位除外;
反码→补码,在反码末尾加一。
例:已知原码0b10001001求补码,已知补码0b10100011求原码?
1 0001001 原码 1 0100011 补码
1 1110110 反码 1 0100010 反码
1 1110111 补码 1 1011101 原码
-
数据类型
数据类型有基本数据类型和引用数据类型;
基本数据类型
1.整数型:byte(占一个字节 -128——127),short(占两个字 -2^15——2^15-1),
int (占四个字节 -2^31——2^31-1),long (占八个字节 -2^63——2^63-1)
2.小数型:float(占四个字节 -3.403*10^38 ~ 3.403*10^38),
double(占八个字节 -1.798*10^308 ~ 1.798*10^308);
3.字符型:char (占两个字节 0 ~ 2^16 - 1);
4.布尔型:boolean (占一个字节,值只有两个,true false)。
-
变量
变量:程序执行过程中其值可以发生变化的量(变量其实就是内存中开辟的一块空间,可以存储数据,并且存储的数据可以发生变化)
定义格式:数据类型 变量名(=值) *当变量不使用时可以不赋值
变量使用的注意事项:在同一作用域内,不能定义同名变量
变量命名用小写
变量必须赋值才能使用
-
数据类型转换
-
隐式类型转换
1.byte short char类型参与运算时,会自动转换为int类型的数据,当有long float double类型的数据参与运算时,会相应的提升为其类型。 2.boolean类型不能转换成其他数据类型 3.byte short char类型之间不能相互转换。 例:定义变量的写法:哪句是编译失败的呢?为什么呢? byte b1 = 3, b2 = 4, b; b=b1+b2; b=3+4; 答:第二句是错误的,因为当byte类型的数据在进行运算时,会自动生成int类型的变量,byte类型的数据只有一个字节,int类型有八个字节,所以不能编译, 第三句因为3和4时常量,所以不会出现类型准换的问题-
强制类型转换
1.格式:目标数据类型 变量名=(目标数据类型)(被转换的数据)。 2.尽量不要使用强制类型准换,因为可能会存在损失精度的问题。 -
-
字符和字符串参与运算
1.System.out.println('a'); System.out.println('a' + 1); 第一个的输出是a,第二个的输出是98,当字符串独自输出是直接输出,当它参与运算时则是用ASCII码表中的值,'a'=97 'A'=65 '0'=48 2.+有两种作用一种是充当相加的作用,还有一种是起拼接作用,当+两端有任意一段是字符串的时候它就起连接作用,将两端的内容连接起来形成一个新的字符串。 例:下列代码的执行结果是: System.out.println(‘0’+"ak"+47);//因为这个式子的两个加号两端都是字符串所以起连接作用,就直接输出字符串。 答:0ak47 System.out.println(‘0’+47+"ak");//这个式子的第一个加号两端是字符和常量,所以是起相加作用,第二个加号右边是字符串,所以起连接作用。 答:95ak -
运算符
-
算术运算符的基本用法
1.什么是运算符 对常量和变量进行操作的符号称为运算符 2.运算符的分类 算术运算符 赋值运算符 比较运算符 逻辑运算符 位运算符 三目运算符 3.算数运算符有哪些 + , - , * , / , % , ++ , -- 4.案例演示 算数运算符的基本用法 注意事项: a:整数相除只能得到整数。如果想得到小数,请使用浮点数 b:/获取的是除法操作的商,%获取的是除法操作的余数 %运算结果的符号,取决于参与运算式左边的符号 int a=-50,b=3,f; f=a%b; System.out.println(f); 运行结果是-2 int a=50,b=-3,f; f=a%b; System.out.println(f); 运行结果是2-
算数运算符++和--的用法
1.++,--运算符的作用 自加(++)自减(--)运算 a++ ++a:自加。对原有的数据进行+1 a-- --a:自减。对原有的数据进行-1 2.注意事项 单独使用: ++,--放在操作数的前后效果一样。 参与运算使用: 放在操作数的前面,先自增或者自减,然后再参与运算。 放在操作数的后面,先参与运算,再自增或者自减。 例1:下列代码执行后,请问a,b,c的值分别是多少? int a = 10; int b = 20; int c = 30; a = b++; b = ++c; a--; 答:a=19 b=31 c=31 例2:下列代码的执行结果是: int a = 10; int b = (--a)+(a--)+(a*10); System.out.println(a); System.out.println(b); 答:a=8 b=98-
赋值运算符的基本用法
赋值运算符有哪些 =, +=,-=,*=,/=,%= 注意事项: a:基本的赋值运算符:= 把=右边的数据赋值给左边。 b:扩展的赋值运算符:+=,-=,*=,/=,%= += 把左边和右边做加法,然后赋值给左边。 int b=20; b+=10; //b=b+10;等价于b+=10; System.out.println(b); 运算结果是20 (-=,*=,/=,%=与+=同理) 注意:b+=10会进行强制类型转换。 例:下面代码有问题吗?为什么? short s = 1; s = s + 1; 和 short s = 1; s+=1; 答:第一个代码有问题,因为在short类型的数据在参与运算时,会自 提升为int类型,因为s时short类型的只有2个字节,而int类型有8个 字节,所以不能编译成功; 第二个代码是对的s+=1会进行强制类型转换,而且最后得出的值不 超出四个字节的范围,也不会造成数据损失。 c: 赋值运算符要求左边的数据必须是一个变量-
关系运算符的基本用法及其注意事项
关系运算符有哪些 == ,!= , < , > , <= , >= , instanceof(后面讲解) 注意事项: 无论你的操作是简单还是复杂,结果是boolean类型。 "=="不能写成"="。 -
-
总结
今天我们了解了常量和整数常量的四种表现形式,并且学会了各个进制之间的转换,还学会了原码反码补码之间的转换,重点是最后学会了变量和运算符,而且还知道了在使用时应该注意的事项,收获满满

浙公网安备 33010602011771号