Java基础知识(2)

1.常量

常量:在程序执行过程当中,其值不发生变化的量;
常量:在JAVA中分为字面值常量和自定义常量;
字面值常量:
整数常量:100 200 3 6 
小数常量:0.9 
布尔常量 :true  false
字符常量 :被单引号括起来的单个字符,只能是单个字符's'  'f'
字符串常量:被双引号所引起来的单个或多个字符 "a" "aafdfds"
空常量:null

2.Java语言基础 进制

字节计算机中数据的最小单位
1byte=8 bit
1kb=1024 byte
1G=1024 M
由这些1 0 组成的数据称为2进制数据
二进制:0 1
八进制:0 - 7
十进制:0 - 9
十六进制:0-9 A-F
如何区分
二进制前缀:0b  0b1000
八进制: 0
十六进制:0X
十进制默认就是十进制

十进制到任意进制的转换

除基取余 直到商为0 余数反转

原码 反码 补码

计算机底层采用的是 补码 运算的
正数的原码 反码 补码是一样的
负数的反码为原码符号位不变 其余取反
负数的补码为原码符号位不变 其余取反后加一

变量

变量:在程序执行过程中,其值会发生改变的量
变量其实就是在内存中开辟了一小块空间可以存储数据

对于变量,必须约束变量的范围,以及他的取值类型。
我们可以通过数据类型来约束

JAVA中的数据类型:整数型,浮点型,布尔型,字符型

整数型: 
byte:占两个字节:128~——127
short:两个字节: 
int:4个字节
long:8个字节
浮点型:float 4个字节
       double 8个字节
布尔类型:boolean 1个字节 两个值 true false
字符型: char 2个字节


定义变量的格式:数据类型 变量名=值;
class Variable2 
{
	public static void main(String[] args) 
	{
		//定义变量的注意事项
		//在同一个作用域里面不能定义两个同名变量;
		//作用域:同一对大括号{}所括起来的范围
		//变量必须赋值,才能使用
		//一行可以定义多个变量,建议一行定义一个变量;
        //变量必须赋值才能使用
		System.out.println("Hello World!");
	}
}

数据类型的转换

举例:
class Variable2 
{
	public static void main(String[] args) 
	{
		
byte a=10;
byte b=20;
byte r=a+b;//应该改为 int r=a+b;
		System.out.println(r);
	}
}

}---------- 编译 ----------
Noname2.java:8: 错误: 不兼容的类型:int转换到byte可能会有损失
byte r=a+b;
        ^
1 个错误

输出完成 (耗时 2) - 正常终止

JAVA中的数据类型隐式转换(数据类型的自动提升)易错

当 byte short char 在参与运算时 会自动提升为int类型
如果还有long float double参与运算,则会相应的提升为 long  float double类型。[double>float>long]
byte short char 他们三个不参与转换
boolean 类型不参与数学运算

强制类型转换

定义:强制类型转换,将数据类型强制转换为目标类型;
原理就是把多余的字节丢弃掉,保留目标数据类型的字节,但也有可能发生精度损失的问题;

常量优化机制

byte f=10+20;
不会报错!
常量优化机制:当多个常量参与运算时,会先计算他们的结果在不在数据类型的范围内,如果在就不会报错,如果不在就报错;
整数默认是int类型,小默认是double类型;
class Variable2 
{
	public static void main(String[] args) 
	{
		
byte a=10;
byte b=20;

	//byte c=a+20;
	byte f=10+20;
	//常量优化机制:当多个常量参与运算时,会先计算他们的结果在不在数据类型的范围内,如果在就不会报错,如果不在就报错
	//强制类型转换,将数据类型强制转换为目标类型;
    //原理就是把多余的字节丢弃掉,保留目标数据类型的字节,但也有可能发生精度损失的问题;
		System.out.println(f);
	}
}

字符串参与运算时会自动转换为ASC码表中的数值

当byte short char 参与运算时会自动提升为int类型;
空格也算字符
class Char 
{
	public static void main(String[] args) 
	{
		//字符参与运算时,会查找该字符在ASC码表中的十进制值;
		char ch='a';
		char sh=' ';//空格也是字符
		int r=ch+1;
		//a 97;
		//A 65;
		//0 48;
		System.out.println(r);
	}
}

“+”的作用

作用一:数学中的运算符
作用二:在代码中还有拼接符的作用;当加号的运算两端,只要任意一端是一个字符串,就会起拼接符的作用,将两端拼接起来,形成一个新的字符串;
注意输出语句的运算顺序;

运算符

运算符:对常量或者变量进行操作的符号;
运算符:数学运算符 比较运算符 逻辑运算符 位运算符 三元运算符;
数学运算符:+ - * / —— ++ %
赋值运算符:= += -= /= %=
+=  可以自动强制类型转换;
比较运算符(关系运算符):其运算结果为布尔类型 0/1
== != < > <= >= instance of()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值