java学习第一周学习总结

                                                       **JavaEE学习**

学习周报

1.变量-数据类型 ,运算符
2.注释,关键字,标识符,常量
3.位运算符,三元运算符,键盘录入数据,流程控制语句
4.-switch语句使用,循环结构语句for,循环结构语句while

变量

变量:程序执行过程中,其值发生改变的量。
三要素数据类型,变量名,初始化值。
Java语言数据类型划分为基本数据类型-四种八类:整数,浮点,字符,布尔类型(byte范围(-128~+127)考点,short,int(整数默认类型) ,long;float, double默认;char;boolean:true/false;)注意:如果定义long类型,在值末尾+L/l; 如果定义浮点类型它默认double类型,在定义float类型,值末尾+f/F。
定义变量注意事项:遵循变量三要素;先定义,但是必须在使用之前对这个变量初始化,否则编译不通过;java是强类型语言,不能重复定义;同一行可以定义多个变量,开发时不建议使用。(笔试面试题经常用)
变量在进行运算,必须保证数据类型一致。byte,short,char三者不会相互转换,参与运算提升为int类型(考点)-long-double类型;boolean不会进行数据类型相互转换
引用数据类型:具体类,抽象类(abstract),接口(interface)
Java中存在强制类型转换:
语法格式:
目标数据类型 变量名 = (目标数据类型)(初始化值) ;

注意事项:
强制类型不要随便使用,损失数据的精度!
适用范围:基本数据类型以及引用类型!
例: double d=44.667; byte a,b=2,c=6;
float f=(float)d; a=b+c; 编译报错(1.byte取值范围2.强制类型转换)
d=9+8;

+:表示一个数据是正数,同时也能表示一个字符串拼接符号,也能做加法运算
字符串拼接符号使用居多
字符串数据+(拼接符号) 任何数据= 新的字符串
运算符包括:算数,赋值,关系(比较),逻辑,位运算符,三元运算符。
算数运算符包括:基本算数运算符±*/(默认取整)%(模),扩展算数运算符++或–

扩展的算术运算符:	++或者--
		情况1:
			单独使用:无论操作符++或者--在数据的前面还是数据的后面,都是对当前数据本身的值进行自增1或者自减1;
		情况2:
	参与运算使用:
		1)如果++或者--在数据的前面,是先对当前数据值进行自增1或者自减1,然后参与运算
		2)如果++或者--在数据的后面,先运算,然后在对该数据值本身进行自增1或者自减1

赋值运算符

基本赋值运算符:“=”将等号右边的值赋值给等号左边的变量;例如:int a=10
面试题

short s = 1 ;
s = s+ 1;
s+=1 ;
后面哪一句会编译失败,原因什么?如何解决呢?
第二句会编译失败,byte,short,char三者不转换,一旦参与运算—>默认先提升int类型
s = (short)(s+1) ;
扩展的赋值运算符里面隐藏了一个强制类型转换(不
加粗样式会出现问题)

关系(比较运算符)<,>,<=,>=,==,!=

特点:使用比较符合连接的表达式无论是简单表达式还是复杂的表达式,结果都是boolean类型
注意:
== 比较的两个数据值是否相等,不要写成= (赋值运算符)
***********数学表达式: 3<=x<=5   
Java语言: x>=3 && x<=5 并列关系***********

逻辑运算符

逻辑运算符的分类:
基本的逻辑运算符:
逻辑单与 & :有false,则false
逻辑单或 | :有true,则true
逻辑异或 ^ :相同则为false,不同则为true
简单记忆:男女关系
男男(false) 女女(false) 女男(true) 男女(true)
逻辑非 ! :!true,则false;非false,则true;偶数个非是它本身的结果
开发中,经常使用的逻辑双与&&或者逻辑双或||

扩展的逻辑运算符
逻辑双与 &&
逻辑双或 ||
面试题:
逻辑双与&&和逻辑单与&的区别?
共同点:
都是并列关系,有false,则false
逻辑双与&&最大的不同点:
存在逻辑双与&&短路效果: (经常在笔试题中选择题!)
逻辑双与&&连接的表达式左边如果结果为false,右边的表达式不执行了;
逻辑双|| :逻辑双||连接的表达式左边为true,右边不执行了!(逻辑双||的短路效果)

位运算符

位运算符 :针对两个具体的数据值进行运算
基本的位运算符
位与&
位或|
位异或^
~反码(按位取反,0变1,1变0)
移动符号
<<(左移),>>(右移),>>>(无符号右移)
位异或的特点:
一个数据对另一个数据位移或两次,结果是它本身

注释

//单行注释
/*
内容

*/
多行注释
作用:提高程序的阅读性

关键字

class,public, static, void,
interface,extends,abstract,相关的基本数据类型等等…

标识符

标识符:给类,(接口),变量,(方法)起名字的字符序列!
见名知意

常量

常量:在程序的执行过程中,其值不发生改变的量!
分为:字面值常量和自定义常量
1)字面值常量
a)字符串常量:使用双引号括起来的内容
举例: “hello…”
b)字符常量:使用单引号括起来的单个内容
举例:‘A’,‘a’,‘0’
‘AB’:写法有问题
c)整数常量: (整数:默认十进制)
100,1000
d)小数常量:
3.14,12.56
e)布尔常量:
true,false
f)空常量:
null
2)自定义常量(跟final关键字有关系:面向对象部分重点讲)
进制的组成规则:
二进制:由0,1组成,以0b开头(只是来表示是一个二进制数据) 0b100
八进制的组成:由0,1,2,…7组成,以0开头: 0100
十进制:整数 默认值(100)
十六进制的组成:由0,1,…9,a,b,c,d,e,f组成,以0x开头

位运算符

位运算符中相关的移动符号:
<<:左移,将最高符号位舍弃掉,在右边补齐0
>>:右移符号: 如果最高符合为如果是0,在左边补齐0;最高符号位如果是1,左边补齐1
>>>:无符号右移:无论最高符号为是0还是1,始终在左边补齐0
3 << 2 :将3这个数据左移动两位
**(练习)**计算出3对应的二进制数据:0b11
00000000 00000000 00000000 00000011 原码(同时也是反码和补码,正数)
补码:
00000000 00000000 00000000 00000011
(00)000000 00000000 00000000 0000001100 (使用补码左移动两位)
000000 00000000 00000000 0000001100:补码—>反码—原码(正数)
=12

三元运算符

二目运算符:
int a = 10 ;
int b = 20 ;
a > b
三元运算符也称为(三目运算符)
格式:
(表达式)? 执行true的结果:执行false的结果;

键盘录入数据

步骤:1)导包 在Java中只要不是java.lang包下的类都需要导包
位置在class上面, 格式import java.util.Scanner; (用哪个类导哪个类)
2)固定格式:创建一个文件扫描器对象
Scanner 对象名 = new Scanner(System.in) ;
3)提示:“请您输入一个整数数据:”
4)接收数据:
int 变量名= 对象名.nextInt() ;
5)输出变量名即可!

流程控制语句

1.顺序结构语句
2.选择结构语句if
3.选择结构语句switch
if结构语句
三种格式:
if(条件表达式){
语句;
}

				****//开发中:if格式2使用居多
				if(条件表达式){
					语句1;
				}else{
					语句2;
				}****
				
				if(条件表达式1){
					语句1;
				}else if(条件表达式2){
					语句2;
					
				.....
				}else{
					语句n+1;
				}
				switch 选择结构语句

格式:
	
	switch(表达式){
	case 值1:
		语句1;
		break ;		
	case 值2: 
		语句2;
		break ;
	...
	...
	default:
		语句n+1;
		break ;
	}
				**switch语句使用的注意事项:
	1)default语句是可以放在语句中的任何位置,不影响执行流程!
	(建议default语句使用的时候放在语句末尾)
		如果放在语句中,最好带上break,否则会造成case穿透!
	2)switch语句的结束条件:
		遇见break结束或者程序默认执行到末尾!
	3)case语句后面的值只能是常量,不能变量(Java是一种强类型语言)			
	javascript:前端,简称js,弱类型语言 (switch语句的case后面既可以是常量也可以变量)**

猜你喜欢

转载自blog.csdn.net/YL12261022/article/details/107426835