Java基础经典资料.ppt

上传人:牧羊曲112 文档编号:6509734 上传时间:2023-11-07 格式:PPT 页数:42 大小:569.50KB
返回 下载 相关 举报
Java基础经典资料.ppt_第1页
第1页 / 共42页
Java基础经典资料.ppt_第2页
第2页 / 共42页
Java基础经典资料.ppt_第3页
第3页 / 共42页
Java基础经典资料.ppt_第4页
第4页 / 共42页
Java基础经典资料.ppt_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《Java基础经典资料.ppt》由会员分享,可在线阅读,更多相关《Java基础经典资料.ppt(42页珍藏版)》请在三一办公上搜索。

1、成都传智播客教育,Java 基础上,讲师:Will,成都传智播客教育,Java编程基础(前三天课程),Java语法格式变量以及数据类型运算符语句方法数组,高屋建瓴,步步为营!,成都传智播客教育,今日任务,Java语法格式Java关键字、保留字、标识符Java的常量和变量Java数据类型数据类型转换Java运算符算术运算符赋值运算符比较运算符逻辑运算符移位运算符运算操作优先级,成都传智播客教育,Java语法格式,任何一种语言都有自己的语法规则,Java也一样,既然是规则,那么知道其如何使用就可以了。代码都定义在类中,类由class来定义,区分 public class 和 class;代码严格区

2、分大小写,如main 和 Main 是不一样的;Java中的标识符与关键字;注释;main方法的作用:程序的入口保证程序的独立运行被JVM调用,成都传智播客教育,Java中的注释,1.单行注释/:/后到本行结束的所有字符会被编译器忽略;2.多行注释/*/:/*/之间的所有字符会被编译器忽略3.文档注释/*/:在/*/之间的所有字符会被编译器忽略,java特有的(用于生成文档);,注意:多行和文档注释都不能嵌套使用,成都传智播客教育,Java语言分隔符,分号;语句的分割,表示一句话结束,好比咱们使用的句号;花括号 表示一个代码块,是一个整体,花括号要一起使用;方括号 定义数组和访问数组元素时使用

3、;圆括号()使用很广泛,具体用到细讲;圆点.类/对象 访问它的成员(字段,方法)时使用等。空格 分割一条语句的不同部分,空格的次数不限制;,成都传智播客教育,Java的关键字,成都传智播客教育,Java中的标识符,可简单理解为在Java程序中为了增强阅读性自定义的名称。比如:类名,方法名,变量名等。命名规则:(1)由字母、数字、下划线、$组成,不能以数字开头注意:此处的字母还可以是中文,日文等;(2)大小写敏感(3)不得使用java中的关键字和保留字(4)别用Java API里面的类名作为自己的类名。,成都传智播客教育,Java中的常量,常量:程序中固定不变化的值。比如:整数1,2,3,小数3

4、.14,false,true等。,成都传智播客教育,Java的变量,变量的概念:占据着内存中的某一个存储区域;该区域有自己的名称(变量名)和类型(数据类型);该区域的数据可以在同一类型范围内不断变化;为什么要定义变量:用来不断的存放同一类型的常量,并可以重复使用;使用变量注意:变量的作用范围,初始化值定义变量的格式:数据类型 变量名=初始化值;注:格式是固定的,记住格式,以不变应万变。作用范围:定义开始到定义它的代码块结束;同一范围内,不允许多个个局部变量命名冲突,成都传智播客教育,Java成员变量和局部变量,局部变量:不是声明在类体括号里面的变量;局部变量使用前必须初始化值;局部变量没有默认

5、初始化值;局部变量的作用域是从定义开始到定义它的代码块结束;成员变量:在方法体外,类体内声明的变量,又称字段(Field)或全局变量;成员变量的作用域是整个类中;,成都传智播客教育,Java的数据类型,整型默认:int 浮点型默认:double,成都传智播客教育,Java基本数据类型,Java中定义了4类共8种基本数据类型。布尔型:boolean字符型:char整数型:byte、short、int、long浮点数型:float、double,成都传智播客教育,Java基本数据类型,成都传智播客教育,成都传智播客教育,布尔型boolean,boolean类型通常用于逻辑运算和程序流程控制。boo

6、lean 类型数据只允许取值true 或 false(不可以使用0 或非0的整数来代替true和false,区分于C语言)。,boolean flag;flag=true;System.out.println(flag+flag);,成都传智播客教育,字符型char,char型数据用来表示通常意义上得“字符”char占2字节,的范围是0,65535,但是前256个表示特殊字符;字符常量为 用单引号括起来的单个字符,例如:char c=A;char c2=哥;char c3=97;java字符采用Unicode编码,可用十六进制编码形式表示。char c1=u0061;/a在字符的操作中还存在着

7、转义字符,char c1=;char c2=;System.out.println(c1);/打印输出System.out.println(c2);/打印输出思考:怎么打印输出带引号的cd itcast?,成都传智播客教育,整数类型(byte、short、int、long),Java语言整型常量的四种表示形式:二进制整数,0b或0B开头,如:int a=0B110;十进制整数,如:int a=17;八进制整数,要求以0开头,如 int a=012;十六进制整数,要求0X或0 x开头,如int a=0 x12;Java语言的整型常量默认是int型,声明long型变量后加上l或L:int i=12

8、3;/int类型long a=123;/会不会错?把一个int类型的值123赋给long变量a?long l=123L;/long 类型,成都传智播客教育,浮点类型(float、double),double和float并不能表示一个精确的数字;Java浮点类型常量有两种表示方式:十进制形式:例如:3.14,168.0,.618科学计数法形式:例如:3.14e2,3.14E2,1000E-2Java浮点型常量默认是double,则要声明一个常量为float型,则需在常量后加上f 或 F,如:double pi=3.14;/正确 float pi=3.14F;/必须加上f,或转型 float pi

9、3=(float)3.14;,注意:Java里只有浮点型的变量才可以接受科学计算式结果:int num=314E2;/,成都传智播客教育,最常用的引用数据类型(String),首先得说明,String不属于基本数据类型;String是一个类,表示字符串(后面详讲);所谓字符串,就是一串字符,也就是多个字符连接在一起;字符串都得使用 括起来的,连接字符串使用+;,String str;str=哥曾信佛但佛信曾哥!;或 String str=哥曾信佛但佛信曾哥!;/字符串的连接采用+符号。String s=春哥+曾哥+都是哥;System.out.println(s);/春哥曾哥都是哥,成都传智播

10、客教育,数据过长和溢出,过长:int num=1111_1111_111;/编译通不过,int 最大2147_4836_47溢出:当整数的数据大小超出范围,而程序中没有做数据范围检查时,此时输出的值将会发生紊乱。int max=Integer.MAX_VALUE;/2147483647int x=max+1;System.out.println(x);int min=Integer.MIN_VALUE;/-2147483648int y=min+1;System.out.println(min-1);怎么办?(数据装不下了),成都传智播客教育,基本数据类型转换之向上转型,boolean 类型是

11、不可以转换为其他基本数据类型。整型,字符型,浮点型的数据在混合运算中相互转换,转换时遵循以下原则:容量小的类型可自动转换为容量大的数据类型;byte,short,char int long float doublebyte,short,char之间不会相互转换,他们在计算时首先会转换为int类型。,int i=123;long l=i;float f=3.14F;double d=f;,成都传智播客教育,基本数据类型转换之向下转型,容量大的数据类型转换为容量小的数据类型时,要加上强制转换符,但可能造成精度的降低或溢出,使用时要格外注意。有很多种类型的数据混合运算时,系统首先自动的将所有数据转换

12、成容器最大的哪一种数据类型,再计算。浮点型:默认是double整型:默认是 int,long l=123L;int i=(int)l;double d=3.14;float f=(float)d;,成都传智播客教育,类型转化,自动类型转换(也叫隐式类型转换)强制类型转换(也叫显式类型转换)什么时候要用强制类型转换?表达式的数据类型自动提升所有的byte型、short型和char的值将被提升到int型。如果一个操作数是long型,计算结果就是long型;如果一个操作数是float型,计算结果就是float型;如果一个操作数是double型,计算结果就是double型。分析 System.out.

13、println(a+1)结果?,成都传智播客教育,Java的运算符,运算符是一种特殊符号,用以表示数据的运算、赋值和比较等共分以下几种:算术运算符赋值运算符比较运算符逻辑运算符移位运算符,成都传智播客教育,算术运算符,成都传智播客教育,算术运算符的注意问题,比较下列结果,想想原因:System.out.println(1.0/0);System.out.println(1/0);对于除号“/”,它的整数除和小数除是有区别的:整数之间做除法时,只保留整数部分而舍弃小数部分。,int x=7510;x=x/1000*1000;x=?实际运行结果是多少,想想为什么?,C/C+只允许%两边的操作数是整

14、型的,而Java既支持整型也支持浮点型.double ret=3.14%1.1;/结果是 0.94,成都传智播客教育,字符串连接符,“+”除用于算数加法运算外,还可以对字符串进行连接操作:int sum=99+1;String s=cd+itcast;/cditcast“+”运算符两侧的操作数中只要有一个String类型,一个是基本数据类型时,编译成class文件后,两个操作数就被连接成了一个新的String值:,int age=80;Sysytem.out.println(c=+c);System.out.println(8+7+hello);/结果是:System.out.println(

15、8+hello+7);/结果是:System.out.println(hello+8+7);/结果是:,成都传智播客教育,赋值运算符,=,+=,-=,*=,/=,%=int a,b,c;a=b=c=3;int a=3;a+=5;等同运算a=a+5;思考:short s=3;s=s+2;与s+=2;有什么不同?,成都传智播客教育,比较运算符,注1:比较运算符的结果都是boolean型,也就是要么是true,要么是false。注2:比较运算符“=”不能误写成“=”。,成都传智播客教育,逻辑运算符,逻辑运算符用于连接布尔型表达式,在Java中不可以写成33&x6。“&”和“&”的区别:单与时,左边无

16、论真假,右边都进行运算;双与时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。“|”和“|”的区别同理,双或时,左边为真,右边不参与运算。“”与“|”不同之处是:当左右都为true时,结果为false。,成都传智播客教育,表达式,是由数字、运算符、数字分组符号(括号)等以能求得数值的有意义排列的序列;a+b3.14+a(x+y)*z+100boolean b=i 10,成都传智播客教育,Java运算优先级,成都传智播客教育,三目运算符,“三目运算符”,语法格式:x?y:z;其中x为boolean类型表达式,先计算x的值,若为true,则整个三目运算符的结果是表达式y的值,否则就

17、是z的值。问:y和z的结果类型一样吗,由什么决定?,int score=70;int x=6;int y=5;String type=score y?x:y;System.out.println(type=+type);System.out.println(max=+max);,成都传智播客教育,位运算符,成都传智播客教育,位运算符结果表,成都传智播客教育,位运算-按位与(&),参与运算的两个数,若两个相应的位数都为1,则该位的结果值是1,否则是0;例如:3&5 不等于8,先把 3和5以二进制表示,再进行按位于运算:,十进制 二进制 结果(十进制)300000000_00000000_0000

18、0000_00000011500000000_00000000_00000000_00000101-&:00000000_00000000_00000000_000000011所以3&5等于 1.,成都传智播客教育,位运算-按位或(|),参与运算的两个数相应位中只要有一个1,结果就是1;例如:3|5 不等于8,先把 3和5以二进制表示,再进行按位于运算:,十进制 二进制 结果(十进制)300000000_00000000_00000000_00000011500000000_00000000_00000000_00000101-|:00000000_00000000_00000000_0000

19、01117所以3|5等于 7.2的0次方+2 的1次方+2的2次方=1+2+4=7,成都传智播客教育,位运算-异或(),参与运算的两个数相应位相同则结果为0,异号则为1;,十进制 二进制 结果(十进制)300000000_00000000_00000000_00000011500000000_00000000_00000000_00000101-:00000000_00000000_00000000_000001106所以3 5等于 6.,成都传智播客教育,左移和右移,左移操作“”:将运算数的二进制码整体右移指定位数,右移之后的空使用“符号位”来补充。若是正数使用“0”补充;若是负数使用“1”

20、补充;无符号右移:将运算数的二进制码整体右移指定位数,右移之后的空使用“0”来补充,操作负数:取反,求补,操作,取反,求补/-3:10000000_00000000_000000000_00000011/-3的反码:11111111_11111111_111111111_11111100,符号位不变,其他位 0,1交换/-3的补码 11111111_11111111_111111111_11111101,反码加1,得到补码/移位:111111_11111111_111111111_1111110100/类似反码:10000000_00000000_00000000_00001011/补码:10

21、000000_00000000_00000000_00001100,成都传智播客教育,Java7新特性,数值的二进制表示:0B或0b;数值的底线格式;简单地说,就是一个数值(整数或浮点数)的表示方式,除了数字、类型符号、正负符号、小数点外,还能加上底线来增加数值的可读性。当我们表示一个二进制的数值。int bin1=0b000000000000000001100011;/99的二进制,很容易多些或少些一个0或1,为此Java7后开始支持新的书写格式。int bin2=0b00000000_00000000_01100011;/清晰多了float pi=3.14_159_26f;注意:底线不能加在数值的开头;例如 _12_34,这样是错误的。底线不能加上数值的结尾;例如 12_34_,这样是错误的。底线不能加在2进位和16进位的进位表示字元之后;例如 0 x_1234,0b_1100,这样是错误的。,成都传智播客教育,友情提示,对于刚开始接触Java的学员,对于新事物总会有一个认知的过程。要知道Java是计算机语言,如同英语,中文一样都有自身的语法规则,知道其是什么,如何使用就可以。刚开始有些生疏,接触的时间长了,也就熟悉了。记忆乃智慧之门。多写,多练,不要依赖老师和视频,学会自我救赎。,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号