好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

Java程序设计基础第2章java语言基础.ppt

49页
  • 卖家[上传人]:re****.1
  • 文档编号:584224806
  • 上传时间:2024-08-30
  • 文档格式:PPT
  • 文档大小:811.52KB
  • / 49 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 主讲主讲: :高悟实高悟实JAVA程序设计基础程序设计基础  TEL:88549109 EMAIL:gws@ 第二章第二章JAVA语言基础语言基础 通过本章的学习,主要掌握以下知识点:通过本章的学习,主要掌握以下知识点: Java使用的数据类型使用的数据类型 数据类型转换数据类型转换 由键盘输入数据由键盘输入数据 运算符与表达式运算符与表达式 本章的重点:本章的重点: 由键盘输入数据由键盘输入数据本章的难点:本章的难点: 数据类型转换数据类型转换 表达式及运算符的优先级、结合性表达式及运算符的优先级、结合性 3 本本章章主主要要介介绍绍编编写写Java程程序序必必须须掌掌握握的的若若干干语语言言基基础础知知识识,,包包括括数数据据类类型型、、变变量量、、常常量量、、表表达达式式等等掌掌握握这这些些基基础础知知识识,,是是编编写正确写正确Java程序的前提条件程序的前提条件 4 2.1 数据类型数据类型 Java定义了定义了4类共类共8种基本类型,它们的分类种基本类型,它们的分类及关键字如下:及关键字如下:• 整型整型 byte,,short,,int,,long• 浮点型浮点型 float,,double• 逻辑型逻辑型 boolean• 字符型字符型 charJava数据类型分为两大类,一类是基本数据数据类型分为两大类,一类是基本数据类型,另一类是引用类型。

      类型,另一类是引用类型5 1.整型.整型表表2.1 Java语言的四种整型语言的四种整型类 型数据位范 围byte(字节型)8-128~127,即-27~27-1Short(短整型)16-32 768~32 767,即-215~215-1int(整型)32-2 147 483 648~2 147 483 647,即-231~231-1long(长整型)64-9 223 372 036 854 775 808~9 223 372 036 854 775 807,即-263~263-l6 2.浮点型.浮点型表表2.2 Java的两种浮点型的两种浮点型类  型数据位范    围float(单精度浮点) 321.4E-45~3.4E+38double(双精度浮点)644.9E-324~1.8E+3083.逻辑型.逻辑型 真真:true 假假:false4.字符型.字符型 7 表表2.3 Java的基本数据类型的基本数据类型数据类型关键字占用字节数默认数值取值范围布尔型boolean1falsetrue,false字节型byte10-128~127短整型short20-32768~32767整型int40-2147483648~2147483647长整型long80L-9223372036854775808~9223372036854775807单精度浮点型float40.0F1.4×10-45~3.4×1038双精度型double80.0D4.9×10-324~1.8×10308字符型char2’\u0000’’\u0000’~’\uffff’8 表表2.4 数值型常量的特殊值代码数值型常量的特殊值代码 数据类型所在的类最小值代码最大值代码byteJava.lang.ByteByte.MIN_VALUEByte.MAX_VALUEshortJava.lang.ShortShort.MIN_VALUEShort.MAX_VALUEintJava.lang.IntegerInteger.MIN_VALUEInteger.MAX_VALUElongJava.lang.LongLong.MIN_VALUELong.MAX_VALUEfloatJava.lang.FloatFloat.MIN_VALUEFloat.MAX_VALUEdoubleJava.lang.DoubleDouble.MIN_VALUEDouble.MAX_VALUE9 2.2 关键字与标识符关键字与标识符 1.关键字.关键字 关键字关键字(keyword)是是Java中具有特殊含义的中具有特殊含义的字符序列,因此字符序列,因此Java不允许用户对关键字赋予不允许用户对关键字赋予其他的含义。

      其他的含义Java定义的关键字如表定义的关键字如表2.5所示10 表2.5 Java定义的关键字abstractbooleanbreakbytecasecatchcharclasscontinuedefaultdodoubleelseextendsfalsefinalfinallyfloatforifimplementsimportinstanceofintinterfacelongnativenewnullpackageprivateprotectedpublicreturnshortstaticsuperswitchsynchronizedthisthrowthrowstransienttruetryvoidvolatilewhile11 2.标识符.标识符Java用标识符用标识符(identifier)表示变量名、类表示变量名、类名和方法名名和方法名1) 可以由字母、数字和下划线可以由字母、数字和下划线(_)、美元符、美元符号号($)组合而成;组合而成;(2) 必须以字母、下划线或美元符号开头,必须以字母、下划线或美元符号开头,不能以数字开头不能以数字开头12 2.3 2.3 常量常量1.整型常量.整型常量2.浮点型常量.浮点型常量•单精度浮点常量(后跟一个字母单精度浮点常量(后跟一个字母f或或F))•双精度浮点常量(后跟一个字母双精度浮点常量(后跟一个字母d或或D,,可省略)可省略)3.逻辑型常量逻辑型常量•true——真真•false——假假4.字符型常量字符型常量13 转义字符所代表的意义\f换页换页(Form feed),,走纸到下一页。

      走纸到下一页\b退格退格(Backspace),,后退一格后退一格\n换行换行(New line),,将光标移到下一行的开始将光标移到下一行的开始\r回车回车(Carriage return),,将光标移到当前行的行首,但不移到下一行将光标移到当前行的行首,但不移到下一行\t横向跳格横向跳格(Tab),,将光标移到下一个制表符位置将光标移到下一个制表符位置\\反斜线字符反斜线字符(Backslash),,输出一个反斜杠输出一个反斜杠\'单引号字符单引号字符(Single quote),,输出一个单引号输出一个单引号\"双引号字符双引号字符(Double quote),,输出一个双引号输出一个双引号\uxxxx1到到4位十六进制数位十六进制数(xxxx)所表示的所表示的unicode字符\ddd1到到3位八制数位八制数(ddd)所表示的所表示的unicode字符,范围在八进制的字符,范围在八进制的000~~377之间表表2.6 常用的转义字符常用的转义字符14 5.字符串常量.字符串常量 双引号引起的部分即为字符串常量双引号引起的部分即为字符串常量 如:如:“hello world”6. 常量的声明常量的声明用关键字用关键字final标识,通常标识,通常final写在最前面。

      例写在最前面例如:如: final int MAX==10;; final float PI==3.14f;; 15 2.4 2.4 变量变量使用变量的原则:先声明后使用使用变量的原则:先声明后使用变量的三个基本要素:名字、类型和值变量的三个基本要素:名字、类型和值16 1 1.变量声明.变量声明 格式:格式: <类型类型><变量名变量名>[=<初值初值>][,<变量名变量名>[=<初值初值>]……]例如:例如: int i,,j,,k;; 在声明变量的同时可以对变量进行初始化,即赋初在声明变量的同时可以对变量进行初始化,即赋初值例如,值例如, int i==0;;17 格式:格式:变量名变量名=值值举例:举例: 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.变量的赋值.变量的赋值18 2.5 2.5 数据类型转换数据类型转换vJava语言的数据类型在定义时就已经决定,语言的数据类型在定义时就已经决定,因此不能随意转换成其他的数据类型,但因此不能随意转换成其他的数据类型,但java语言允许用户有限度地做类型转换处理,语言允许用户有限度地做类型转换处理,这就是数据类型转换。

      这就是数据类型转换19 1. 数值型不同类型数据的转换数值型不同类型数据的转换(1)自动类型转换自动类型转换①①转换前的数据类型与转换后的类型兼容转换前的数据类型与转换后的类型兼容②②转换后的数据类型的表示范围比转换前的类型大转换后的数据类型的表示范围比转换前的类型大 20 【例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.out.println(”a/b=”+(a/b)); //输出a/b的值 }}输出结果为:a=155,b=21.0a/b=7.380952421 (2) 强制类型转换强制类型转换格式:格式:(欲转换的数据类型)变量名(欲转换的数据类型)变量名 22 【【例例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.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的值的值 }}23 程序执行结果如下:程序执行结果如下:a=155,b=9a/b=17.0a=155,b=9a/b=17.22222124 2. 字符串型数据与数值型数据相互转换字符串型数据与数值型数据相互转换((1)字符串转换成数值型数据)字符串转换成数值型数据表表3.7 字符串转换成数值型数据的方法字符串转换成数值型数据的方法转 换 的 方 法功 能 说 明Byte.parseByte()将字符串转换为字节型数据Short.parseShort()将字符串转换为短整型数据Integer.parseInt()将字符串转换为整型数据Long.parseLong()将字符串转换为长整型数据Float.parseFloat()将字符串转换为浮点型数据Double.parseDouble()将字符串转换为双精度型数据25 例如:例如: String MyNumber="1234.567";; //定义字符串型变量定义字符串型变量MyNumber float MyFloat=Float.parseFloat(MyNumber); ((2)数值型数据转换成字符串)数值型数据转换成字符串例如:例如:int MyInt=1234;; //定义整形变量定义整形变量MyIntString MyString=""+MyInt;; //将整型数据转换成了字符串将整型数据转换成了字符串26 2.6由键盘输入数据由键盘输入数据利用键盘输入数据,利用键盘输入数据,Java语言有如下基本格式:语言有如下基本格式:import java.io.*;public class class_name //类名称类名称{ public static void main(String args[]) throws IOException { bufferedReader buf; String str; …… buf=new bufferedReader(new InputStreamReader(System.in)); str=buf.readLine(); …… }}27 【例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)); System.out.print(”请输入字符串;”); str=buf.readLine(); //将输入的文字指定给字符串变量str存放 System.out.println(”您输入的字符串是:”+str); //输出字符串 }}28 【例2.4】从键盘输入数字,然后将其转换成数值型数据import java.io.BufferedReader;import java.io.*;public class app2_4 {public static void main(String[] args) throws IOException{float num; String str; BufferedReader buf; buf=new BufferedReader(new InputStreamReader(System.in)); System.out.println("请输入一个实数"); str=buf.readLine(); num=Float.parseFloat(str); System.out.println("你输入的数为:"+num);}}29 3.输入多个数据v我我们可以利用可以利用java.util类库中的中的Scanner类简化化输入多个数据。

      入多个数据 Import java.util.*Public class class_name //类名称{public static void main(String args[]) {Scanner reader=new Scanner(System.in); double num; …. num=reader.nextDouble(); … }}30 //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); Scanner.out.print(“请输入第一个数:”); num1=reader.nextInt(); System.out.print(“请输入第二个数:”);num2=reader.nextDouble(); System.out.println(num1+”*”+num2+”=“+(num1*num2));}}31 2.7 运算符与表达式运算符与表达式•算术运算符算术运算符 +、、-、、*、、/、、%、、++、、--•关系运算符关系运算符 >、、<、、>=、、<=、、==、、!=•逻辑运算符逻辑运算符 !、、&&、、||、、&、、|•位运算符位运算符 >>、、<<、、>>>、、&、、|、、^、、~•赋值运算符赋值运算符 =、及其扩展赋值运算符,如、及其扩展赋值运算符,如+=、、/=等。

      等•条件运算符条件运算符 ? ::•其他运算符号其他运算符号 包括分量运算符包括分量运算符.、下标运算符、下标运算符[ ]、实例、实例运运算符算符instanceof、、内存分配运算符内存分配运算符new、、强制类型转换运算强制类型转换运算 符符(类型类型)、方法调用运算符、方法调用运算符()等等 32 1.二元算术运算符.二元算术运算符表 :二元算术运算符运算符功 能示 例+加运算a+b-减运算a-b*乘运算a*b/除运算a/b%取模(求余)运算a%b2.7.1算术运算符算术运算符33 2.一元算术运算符.一元算术运算符表:一元算术运算符表:一元算术运算符 运 算 符功 能示 例+正值+a-负值-a++加1++a或a++--减1--a或a--34 2.7.2关系运算符关系运算符 表:表: 关系运算符关系运算符运算符功 能示 例>大于a>b>=大于或等于a>=b<小于a

      逻辑非(取反)!a将操作数取反^异或a^b两个操作数同真或同假时,结果才为false简洁与a&&b两个操作数均为true时,结果才为true简洁或a||b两个操作数均为false时,结果才为false2.7.3 逻辑运算符逻辑运算符36 简洁与或运算和非简洁与或运算的区别v非简洁运算必须在计算完左右两个表达式之后,非简洁运算必须在计算完左右两个表达式之后,才取结果值才取结果值v简洁运算可能只计算左边的表达式而不计算右边简洁运算可能只计算左边的表达式而不计算右边的表达式,即对于的表达式,即对于&&,只要左边表达式为,只要左边表达式为false,,就不计算右边的表达式,则整个表达式为就不计算右边的表达式,则整个表达式为false;对于对于||,只要左边表达式为,只要左边表达式为true,就不计算右边就不计算右边表达式,则整个表达式为表达式,则整个表达式为true37 【例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(”x^y=”+(x^y)); if(e!=0 & b<0) System.out.println(”b/0=”+b/0); else System.out.println(”a%e=”+a%e); int f=0; if(f!=0 && a/f>5) System.out.println(”a/f=”+a/f); else System.out.println(”f=”+f); }}38 其运行结果为:其运行结果为:a

      按位与a & b将a和b按比特位相与按位或a | b将a和b按比特位相或^按位异或a ^ b将a和b按比特位相异或>>左移a>>b将a 各比特位向右移b位<<右移a<>>0填充右移a>>>b将a 各比特位向右移b位,左边的空位一律填02.7.4 位运算符位运算符 40 2.7.5 赋值运算符赋值运算符1.. 赋值运算符赋值运算符格式:格式:变量或对象变量或对象=表达式表达式 赋值运算符右端的表达式可以还是赋值表赋值运算符右端的表达式可以还是赋值表达式,形成连续赋值的情况例如:达式,形成连续赋值的情况例如:a=b=c=8; 41 2.扩展赋值运算符.扩展赋值运算符在赋值符在赋值符“=”前加上其他运算符,即构成扩展前加上其他运算符,即构成扩展赋值运算符,例如:赋值运算符,例如:a+=3等价于等价于a=a+3 42 表:表: 扩展赋值运算符扩展赋值运算符运 算 符示 例等 效 表 达 式+=a+=ba=a+b-=a-=ba=a-b*=a*=ba=a*b/=a/=ba=a/b%=a%=ba=a%b&=a&=ba=a&b|=a|=ba=a|b^=a^=ba=a^b>>=a>>=ba=a>>b<<=a<<=ba=a<>>=a>>>=ba=a>>>b43 2.7.6条件运算符条件运算符格式:格式:<表达式表达式1> ? <表达式表达式2> : <表达式表达式3>其中其中“表达式表达式1”是一个结果为逻辑值的布尔表达是一个结果为逻辑值的布尔表达式。

      式功能:先计算功能:先计算<表达式表达式1>的值,当的值,当<表达式表达式1>的的值为值为true时,则将时,则将<表达式表达式2>的值作为整个表达式的的值作为整个表达式的值;当值;当<表达式表达式1>的值为的值为false时,则将时,则将<表达式表达式3>的的值作为整个表达式的值值作为整个表达式的值 44 例如:例如:int a=1,,b=2,,max;;max==a > b ? a : b;; //max获得获得a,,b之中的较大值之中的较大值System.out.println("max="+max);; //输出结果为输出结果为max==245 2.7.7 字符串运算符字符串运算符字符串运算符字符串运算符“+”完成字符串连接操作,如果完成字符串连接操作,如果必要,则系统自动把操作数转换为必要,则系统自动把操作数转换为String型例如:型例如:float a=100.0;; //定义变量定义变量a为浮点型为浮点型print("The value of a is"+a+"\n");; //系统自动将系统自动将a转换成字符串转换成字符串46 2.7.8 表达式及运算符的优先级、结合性表达式及运算符的优先级、结合性 47 表:运算符的优先级及结合性(表顶部的优先级较高)优先级运 算 符运算符的结合性1. [] ()2++ -- ! ~ +(正号) -(负号) instanceof右→左3new (类型)右→左4* / %左→右5+ - (二元)左→右6<< >> >>>左→右7< > <= >= 左→右8== !=左→右9&左→右10^左→右11|左→右12&&左→右13||左→右14? :右→左15= += -= *= /= %= <<= >>= >>>= &= ^= |=右→左48 。

      点击阅读更多内容
      相关文档
      2025国开山东开大《土质学与土力学》形成性考核123答案+终结性考核答案.docx 中学综合素质知识点梳理【中学教师资格证】.docx 2025国开山东开大《特许经营概论》形成性考核123答案+终结性考核答案.doc 2025年高考英语全国一卷真题(含答案).docx 2025国开山东《农民专业合作社创建与管理》形成性考核123答案+终结性考核答案.docx 2025国开山东开大《自然现象探秘》形成性考核123答案+终结性考核答案.docx 2025国开山东《消费心理学》形成性考核123答案+终结性考核答案.doc 2025国开山东《小微企业管理》形成性考核123答案+终结性考核答案.doc 2025国开山东开大《资本经营》形成性考核123答案+终结性考试答案.docx 2025国开山东《小学生心理健康教育》形考123答案+终结性考试答案.docx 2025国开《视频策划与制作》形考任务1-4答案.docx 2025国开《亲子关系与亲子沟通》形考任务234答案+期末大作业答案.docx 2025国开电大《煤矿地质》形成性考核123答案.docx 2025国开电大《冶金原理》形考任务1234答案.docx 2025国开《在线学习项目运营与管理》形考任务1234答案.doc 2025国开电大《在线教育的理论与实践》阶段测验1-4答案.docx 2024 年注册环保工程师《专业基础考试》真题及答案解析【完整版】.docx 环保工程师---2023 年注册环保工程师《专业基础考试》真题及答案解析【完整版】.docx 2025国开《液压与气压传动》形考任务一参考答案.docx 2025年春江苏开放大学教育研究方法060616计分:形成性作业2、3答案.docx
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.