day5_手写笔记

晨写

1.什么是常量
在程序的执行过程中,其值不发生改变的量

1.1 常量的分类
字面值常量
	字符串常量  使用双引号括起来的内容 "helloworld"
	字符常量 使用单引号括起来的内容 'A'
		字符常量不参与运算的时候,代表其本身的值,参与运算的时候,参考ASCII表
	整数常量	100   65  
		整数:默认就是十进制
		进制:也属于常量的范围
		二、八、十、十六进制
		任意(x)进制-十进制:(位权展开法)
		十进制---任意进制(使用当前数据除基取余,知道商为0,余数反转)
		“8421码”:十进制和二进制的快速转换法
		X进制---Y进制
		方式一:分步骤
		如:二进制--十进制-八进制
		方式二:使用进制的概念
		二进制---八进制
		在二进制的基础上,从右往左美三个比特位一组,计算对应的值,直接排列
	小数常量	1.1;1.3
	布尔常量	ture/false
	空常量 	null
自定义常量
2.什么是变量
定义:在程序的执行过程中,其值发生改变的量
2.变量的三要素
1.声明限定
2.给当前变量起一个名字
3.初始化值
JAVA数据的类型划分,并且使用代码举例(引用类型先不用举例)
基本数据类型和引用数据类型
1)基本数据类型(四类八种)
	整数类型	byte short int  long
浮点类型	
	单精度类型	float	float F=10000000F
	双精度类型	double	double d=100000000
字符类型	char   char ch='我'
布尔类型	boolean(逻辑判断语句)
2)引用数据类型--面向对象中讲解
			类,数据,接口

回顾重点内容

1.常量分类
进制属于常量范围
有符号位的数据表示法--计算机对数据进行运算的时候,使用这个数据的补码进行计算-反码-原码(只说整数)
正整数:原码,反码,补码都一样
负数:原码(二进制)
	 反码:最高符号位 不变,数值为按位取反
	 补码:最高符号位不变,数值位在末尾+1
2.变量三要素、分类

今日内容

1.变量中的测试(定义变量的注意事项)
1)定义Long类型必须在值的后面加上标记:L  这样就表示定义的长整型变量
2)浮点类型默认double,定义单精度float类型的时候,后面需要加入标记F、f
3)同一个变量不能被定义多次,这是因为java是一个强类型语言,语法和格式是非常严谨的
4)实际开发中,不建议同一行定义多个变量(不适合阅读)
5)方法定义中的变量:局部变量,他在使用之前必须进行初始化
		在定义变量的时候就初始化
		(1)数据类型  变量名 = 初始化值
		要么先定义,然后再使用之前就初始化
		(2)数据类型 变量名;  //声明变量
			变量名 = 初始化;	//变量初始化
6)语句结束是都已  ;结束(英文符号)

		
2.java中的基本数据类型-默认类型提升(隐式转换)
定义:系统自动提升数据类型的转换
两个变量要进行求和---数据类型应保持一致
隐式提升(默认类型提升)必须通过代码计算
2.1 默认数据提升
byte,short,char,三者之间不转换,但是分别参与自己运算的时候.考虑优先提升int----long,float,double
3.JAVA中的显示数据类型提升(强制类型转换):使用基本类型和引用类型
定义:我们自己自己主动通过特殊形式让计算机进行的类型转换
当我们变量相加的时候,如果接收的类型范围小于计算结果的数据类型,需要使用java的强转类型转换--让我们的数据进行类型匹配,防止出现(jvm)提示不兼容
显式转换(强制类型转换)---不仅适用于基本类型,引用类型数据
格式
		目标数据类型 变量名 = (目标数据类型)(结果;);
实际中,强制转换尽量避免,可能会造成数据进度损失
4.JAVA变量常见的面试题
5.运算符
5.1 算术运算符
基本算数运算符
扩展算术运算符   ++    --
5.1.1基本的算术运算符
	算术运算符	 +,-,*,/,%(模)
				/:默认取整
				*1.0:提升为double类型,精确到小数
				%:求余数
	比较运算符(关系运算符)  < ,>, <=, >=, !=(不等于), ==(比较是否相等)
			x>=3 &(逻辑并列)x<=5
			比较运算符的表达式无论简单还是复杂---最终的结果都是boolern
	
	
5.1.2 扩展的算术运算符
扩展的算术运算符 : ++;-- 
		场景1:单独使用
				如果++或者--在数据的前面   eg:++a(递增);--b(递减);
            结论:不论++还是--在数据的前面还是后面,都是对当前的数据本身进行自增1或者自减1
        场景2:参与运算使用
            	++或者--如果在数据的前面  ++a	:先自增或者自减,然后再参与运算
            	++或者--如果在数据的后面  --a	:先参与运算,再自增或者自减
5.2 赋值运算符
		
    赋值运算符	int a = 10  //将10赋值给Int类型的变量a
    	1.基本赋值运算符:=		将等号右边的数据赋值给左边的变量
    		x = x + 200,但是此时要注意数据类型(200是int类型,注意是否存在类型转换)
    	2.扩展赋值运算符:+=;-=;==		
    			x+=200   表示价格等号右边的数据和等号左边的变量x相加然后赋值给x   
    		特点:隐藏了强制类型转换   s+=1类似于s=(目标数据类型)(s+1)
5.3 逻辑运算符
基本逻辑运算符(重点)和扩展的逻辑运算符
5.3.1 基本的逻辑运算符
基本的逻辑运算符(重点运算符):
			逻辑单与&:	并列关系					  (有false则false)
			逻辑单或|:	或的关系--满足一个条件即可		(有ture则ture)
			逻辑异或^:								(相同则为false,不同则为ture )(同错异正)
			逻辑非  !:	偶数个非是他本身	 			(非ture则false,非false则ture)
5.3.2 扩展的逻辑运算符
扩展的逻辑运算符(逻辑双与,逻辑双或)
		逻辑单与 和 逻辑双与 的区别:共同点--都是并列关系
								不同点--逻辑单与--不论左边的表达式是false还是ture,都会把右边的表达式执行
									   逻辑双与--具有短路效果,左边的表达式的=是false,则右边的表达式就不执行了
		逻辑双||:左边的表达式如果是ture,则右边的就不执行了
5.4 位运算符
基本的位运算符和位移符号
5.4.1 基本的位运算符(取值)
基本的位运算符号:
				位与:&		有 0 则 0
				位或:|		有 1 则 1
				位异或:^      相同则为0 ,不同则为1
				反码: ~ 		全部取反
5.4.2 位移符号
位运算之位移符号:
				左移:		<<		将数据的补码进行左移动,右边不够的补0;将最高符号位丢弃掉
				右移:		>>		将数据的补码进行右移动,如果最高符号位是1,则左边补1,如果最高符号位是0,则左边补0
				无符号右移: >>>		无论最高符号位是1还是0,左边始终补0
5.5 三元(三目)运算符
三元运算符的格式:	(表达式)?1)执行ture的结果:2)执行false的结果;
					例如int a = 3;
						int b = 4;
						int max = (a>b)?b:a
			执行流程:	判断表达式是否成立,如果成立则执行ture
										不成立则false
6.键盘录入数据–让程序变得更灵活
在写程序的过程中,让程序变得更加灵活,使用Scanner类;由jdk提供这个类------一个简单的文本扫描器
操作步骤
1)导包: improt java.util.Scanne;		格式必须在class上边
2)创建一个文本扫描器(键盘录入对象):	Scanner 自己起的对象名 = new Scanner(System.in);
3)友情提示录入第一个数据
System.out.println("请您输入第一个值");
int 接受的变量名 = 对象名.nextInt();
4)友情提示输入第二个数据	System.out,println("请您输入第二个数据");
int 接受的第二个变量名 = 对象名.nextInt();
5)输出接受的变量名关系式	SyStem.out.println(关系式);

1)导包	import java.util.Scanner ;
class ScannerDemo{	
	public static void main(String[] args){			//2)创建一个文本扫描器对象 (键盘录入对象)	

//Scanner 对象名(自己起名字)  = new Scanner(System.in) ;		//固定格式
		Scanner sc = new Scanner(System.in) ;
		System.out.println("请您输入一个数据") ;			//3)友情提示并录入int类型数据
		//int 接收的变量名 = 对象名.nextInt() ;
		int a = sc.nextInt() ;						//固定格式		
		//4)输出下a,看效果
		System.out.println("a的值是:"+a) ;
		
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值