《Java程序设计基础-第2章java语言基础.ppt》由会员分享,可在线阅读,更多相关《Java程序设计基础-第2章java语言基础.ppt(49页珍藏版)》请在三一办公上搜索。
1、,主讲:高悟实,JAVA程序设计基础,TEL:88549109,第二章JAVA语言基础,3,通过本章的学习,主要掌握以下知识点:Java使用的数据类型 数据类型转换 由键盘输入数据 运算符与表达式 本章的重点:由键盘输入数据本章的难点:数据类型转换 表达式及运算符的优先级、结合性,4,本章主要介绍编写Java程序必须掌握的若干语言基础知识,包括数据类型、变量、常量、表达式等。掌握这些基础知识,是编写正确Java程序的前提条件。,5,2.1 数据类型,Java定义了4类共8种基本类型,它们的分类及关键字如下:整型 byte,short,int,long 浮点型 float,double 逻辑型
2、boolean 字符型 char,Java数据类型分为两大类,一类是基本数据类型,另一类是引用类型。,6,1整型,表2.1 Java语言的四种整型,7,2浮点型,表2.2 Java的两种浮点型,3逻辑型 真:true 假:false4字符型,8,表2.3 Java的基本数据类型,9,表2.4 数值型常量的特殊值代码,10,2.2 关键字与标识符,1关键字 关键字(keyword)是Java中具有特殊含义的字符序列,因此Java不允许用户对关键字赋予其他的含义。Java定义的关键字如表2.5所示。,11,表2.5 Java定义的关键字,12,2标识符Java用标识符(identifier)表示变
3、量名、类名和方法名。(1)可以由字母、数字和下划线(_)、美元符号($)组合而成;(2)必须以字母、下划线或美元符号开头,不能以数字开头。,13,2.3 常量,1整型常量2浮点型常量单精度浮点常量(后跟一个字母f或F)双精度浮点常量(后跟一个字母d或D,可省略)逻辑型常量true真false假字符型常量,14,表2.6 常用的转义字符,15,5字符串常量 双引号引起的部分即为字符串常量 如:“hello world”,6.常量的声明用关键字final标识,通常final写在最前面。例如:final int MAX10;final float PI3.14f;,16,2.4 变量,使用变量的原则
4、:先声明后使用。变量的三个基本要素:名字、类型和值。,17,1变量声明,格式:=,=例如:int i,j,k;在声明变量的同时可以对变量进行初始化,即赋初值。例如,int i0;,18,格式:变量名=值举例:boolean b=true;/声明boolean型变量并赋值 int x,y=8;/声明int型变量 float f=2.718f;/声明float型变量并赋值 double d=3.1415;/声明double型变量并赋值 char c;/声明char型变量 c=u0031;/为char型变量赋值 x=12;/为int型变量赋值,2变量的赋值,19,2.5 数据类型转换,Java语言的
5、数据类型在定义时就已经决定,因此不能随意转换成其他的数据类型,但java语言允许用户有限度地做类型转换处理,这就是数据类型转换。,20,1.数值型不同类型数据的转换,(1)自动类型转换转换前的数据类型与转换后的类型兼容。转换后的数据类型的表示范围比转换前的类型大。,21,【例2.1】数据类型的自动转换。/app2_1.java 类型自动转换public class app2_1 public static void main(String args)int a=155;float b=21.0f;System.out.println(”a=”+a+”,b=”+b);/输出a,b的值System
6、.out.println(”a/b=”+(a/b);/输出a/b的值 输出结果为:a=155,b=21.0a/b=7.3809524,22,(2)强制类型转换格式:(欲转换的数据类型)变量名,23,【例3.2】整型与浮点数据类型的自动转换。/app2_2.java 整数与浮点数的类型转换public class app2_2 public static void main(String args)int a=155;int b=9;float g,h;System.out.println(”a=”+a+”,b=”+b);/输出a,b的值g=a/b;/将a除以b的结果放在g中System.out
7、.println(”a/b=”+g+”n”);/输出g的值System.out.println(”a=”+a+”,b=”+b);/输出a,b的值h=(float)a/b;/先将a强制转换成float类型后再参加运算 System.out.println(”a/b=”+h);/输出h的值,24,程序执行结果如下:a=155,b=9a/b=17.0a=155,b=9a/b=17.222221,25,2.字符串型数据与数值型数据相互转换(1)字符串转换成数值型数据,表3.7 字符串转换成数值型数据的方法,26,例如:String MyNumber=1234.567;/定义字符串型变量MyNumber
8、 float MyFloat=Float.parseFloat(MyNumber);,(2)数值型数据转换成字符串例如:int MyInt=1234;/定义整形变量MyIntString MyString=+MyInt;/将整型数据转换成了字符串,27,2.6由键盘输入数据,利用键盘输入数据,Java语言有如下基本格式:,import java.io.*;public class class_name/类名称 public static void main(String args)throws IOException bufferedReader buf;String str;buf=new
9、bufferedReader(new InputStreamReader(System.in);str=buf.readLine();,28,【例2.3】从键盘输入数据。/app2_3.java 由键盘输入字符串import java.io.*;/加载java.io类库里的所有类public class app2_3 public static void main(String args)throws IOException BufferedReader buf;String str;buf=new BufferedReader(new InputStreamReader(System.in)
10、;System.out.print(”请输入字符串;”);str=buf.readLine();/将输入的文字指定给字符串变量str存放(”您输入的字符串是:”+str);/输出字符串,29,【例2.4】从键盘输入数字,然后将其转换成数值型数据。import;import java.io.*;public class app2_4 public static void main(String args)throws IOExceptionfloat num;String str;BufferedReader buf;buf=new BufferedReader(new InputStreamR
11、eader(System.in);System.out.println(请输入一个实数);str=buf.readLine();num=Float.parseFloat(str);System.out.println(你输入的数为:+num);,30,3.输入多个数据,我们可以利用java.util类库中的Scanner类简化输入多个数据。,Import java.util.*Public class class_name/类名称public static void main(String args)Scanner reader=new Scanner(System.in);double nu
12、m;.num=reader.nextDouble();,31,/app2_5.java 由键盘输入多个数据import java.io.*;public class app2_5 public static void main(String args)int num1;double num2;Scanner reader=new Scanner(System.in);(“请输入第一个数:”);num1=reader.nextInt();(“请输入第二个数:”);num2=reader.nextDouble();System.out.println(num1+”*”+num2+”=“+(num1
13、*num2);,32,2.7 运算符与表达式,算术运算符+、-、*、/、%、+、-关系运算符、=、&、|、赋值运算符=、及其扩展赋值运算符,如+=、/=等。条件运算符?:其他运算符号 包括分量运算符.、下标运算符、实例运算符instanceof、内存分配运算符new、强制类型转换运算 符(类型)、方法调用运算符()等。,33,1二元算术运算符,表:二元算术运算符,算术运算符,34,2一元算术运算符表:一元算术运算符,35,关系运算符,表:关系运算符,36,表:逻辑运算符,2.7.3 逻辑运算符,37,简洁与或运算和非简洁与或运算的区别,非简洁运算必须在计算完左右两个表达式之后,才取结果值。简洁
14、运算可能只计算左边的表达式而不计算右边的表达式,即对于对于|,只要左边表达式为true,就不计算右边表达式,则整个表达式为true。,38,【例2.6】关系运算符和逻辑运算符的使用。/app2_6.java 关系运算符和逻辑运算符的使用public class app2_6 public static void main(String args)int a=25,b=7;boolean x=a5;/y=true System.out.println(”xy=”+(xy);if(e!=0,39,其运行结果为:ab=falsexy=truea%e=1f=0,40,表:位运算符,2.7.4 位运算符
15、,41,2.7.5 赋值运算符,1 赋值运算符格式:变量或对象=表达式,赋值运算符右端的表达式可以还是赋值表达式,形成连续赋值的情况。例如:a=b=c=8;,42,2扩展赋值运算符在赋值符“=”前加上其他运算符,即构成扩展赋值运算符,例如:a+=3等价于a=a+3。,43,表:扩展赋值运算符,44,条件运算符,格式:?:其中“表达式1”是一个结果为逻辑值的布尔表达式。功能:先计算的值,当的值为true时,则将的值作为整个表达式的值;当的值为false时,则将的值作为整个表达式的值。,45,例如:int a=1,b=2,max;maxa b?a:b;/max获得a,b之中的较大值System.out.println(max=+max);/输出结果为max2,46,2.7.7 字符串运算符,字符串运算符“+”完成字符串连接操作,如果必要,则系统自动把操作数转换为String型。例如:float a=100.0;/定义变量a为浮点型print(The value of a is+a+n);/系统自动将a转换成字符串,47,2.7.8 表达式及运算符的优先级、结合性,48,表:运算符的优先级及结合性(表顶部的优先级较高),Thank You!,
链接地址:https://www.31ppt.com/p-6509970.html