标识符 Java基本数据类型 常量、变量和赋值 类型转换 运算符与表达式

Slides:



Advertisements
Similar presentations
四資二甲 第三週作業 物件導向程式設計.
Advertisements

没有规矩,不成方圆。.
第3章 运算符、表达式与语句 本章导读 1、算术运算符和算术表达式 2、关系运算符与关系表达式 3、逻辑运算符与逻辑表达式
第二章 JAVA语言基础.
C++程序设计 第二章 数据类型与表达式.
C语言实验 第一课 标题:学号+姓名.
Chapter2 Constants, Variables, and Data Types
第九章 字符串.
2.1 基本資料型別 2.2 變數 2.3 運算式與運算子 2.4 輸出與輸入資料 2.5 資料型別轉換 2.6 實例
第三章 C语言基础 学习目标: 熟练掌握:C语言的基本数据类型、运算符及表达式 掌握:常见的输入、输出函数使用方法;
第二章 标识符、关键字和数据类型 a.
程式設計實作.
基础篇 基础知识 —C语言程序设计 学习目标 掌握C语言中三种常见的基本类型及其使用方法 掌握常见的算术运算符和表达式的使用
走进编程 程序的顺序结构(二).
C语言程序设计 第三章 数据类型、运算符与表达式
第2章 数据类型与数据运算.
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
程序设计基础 第 二 章 谌 卫 军 清华大学软件学院 2008年秋季.
3.1 数据类型 3.2 标识符与关键字 3.3 常量 3.4 变量 3.5 运算符与表达式 3.6 一个编程实例
1.2 MATLAB变量表达式与数据格式 MATLAB变量与表达式 MATLAB的数据显示格式
C++语言程序设计 C++语言程序设计 第二章 基本数据类型与表达式 第十一组 C++语言程序设计.
C语言程序设计基础 刘新国.
第二章 Java语言基础.
第2章 数据类型、运算符和表达式.
2019/1/17 Java语言程序设计-程序流程 教师:段鹏飞.
第二章 数据类型、运算符与表达式.
第2章 数据的存储与运算 2.1 数据在计算机中是怎样存储的 2.2 整型数据的运算与分析 2.3 实型数据的运算与分析
第二章 数据类型与运算符 基本数据类型 变量的使用 C语言关键字 数据类型转换规则 算术运算符与赋值运算符 比较运算符与逻辑运算符
第一章 函数与极限.
第4章 PHP流程控制语句.
1.3 C语言的语句和关键字 一、C语言的语句 与其它高级语言一样,C语言也是利用函数体中的可执行 语句,向计算机系统发出操作命令。按照语句功能或构成的不 同,可将C语言的语句分为五类。 goto, return.
第二章Java基本程序设计.
学习目标 1、什么是字符集 2、字符集四个级别 3、如何选择字符集.
JAVA 程式設計 資訊管理系 - 網路組.
目录 2.1数据类型 2.2常量 2.3变量 2.4库函数 2.5运算符及表达式 1.
Java變數 2014/6/24.
程序设计基础A(C语言) 主讲教师: 许 康 教师主页:
第二章 基本数据类型及运算 C数据类型概述 基本数据类型 运算符和表达式 混合运算与类型转换 数据的输入输出 顺序程序设计举例.
四:JAVA语言基础.
第二章 Java基本语法 讲师:复凡.
<编程达人入门课程> 本节内容 内存的使用 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群: ,
C语言程序设计 第一章 数据类型, 运算符与表达式 第二章 顺序程序设计 第三章 选择结构程序设计 第四章 循环控制 第五章 数组.
数据类型与运算规则.
成绩是怎么算出来的? 16级第一学期半期考试成绩 班级 姓名 语文 数学 英语 政治 历史 地理 物理 化学 生物 总分 1 张三1 115
第4章 Excel电子表格制作软件 4.4 函数(一).
第九节 赋值运算符和赋值表达式.
第2章 数据类型、运算符与表达式 2.1 程序设计概述
第4课时 绝对值.
Review 1~3.
多层循环 Private Sub Command1_Click() Dim i As Integer, j As Integer
ASP.NET实用教程 清华大学出版社 第4章 C#编程语言 教学目标 教学重点 教学过程 2019年5月5日.
2.6 字符型数据 一、 字符常量 1、字符常量的定义 用一对单引号括起来的单个字符,称为字符常量。 例如,‘A’、‘1’、‘+’等。
第二章 Java基本语法 讲师:复凡.
C程序设计 实验二 数据类型、运算符和表达式 第6讲
第二章 Java基本语法 讲师:复凡.
程序设计基础A(C语言) 第一章 C语言概述 主讲教师: 许 康
Chap 6 数据类型和表达式 6.1 数据的存储和基本数据类型 6.2 常量和变量 6.3 数据的输入和输出 6.4 类型转换
第3章 数据类型、运算符与表达式 3.1 程序设计概述
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
C++语言程序设计 C++语言程序设计 第九章 类的特殊成员 第十一组 C++语言程序设计.
基本知识 数据类型、变量、常量、运算符.
變數、資料型態、運算子.
鸡兔同笼(续) ——选择结构.
第二章 数据类型与表达式 丘志杰 电子科技大学 计算机学院 软件学院.
第二章 Java基础语法 北京传智播客教育
第9章 位 运 算.
第2章 Java语言基础.
2 Java语言基础 (数据运算与流程控制).
第二章 简单数据类型 §2.1 数据类型概述 §2.2 变量和常量 §2.3 简单数据类型 §2.4 简单数据类型的相互转换
学习目标 1、什么是列类型 2、列类型之数值类型.
Presentation transcript:

标识符 Java基本数据类型 常量、变量和赋值 类型转换 运算符与表达式 第2讲 基本数据类型与表达式 标识符 Java基本数据类型 常量、变量和赋值 类型转换 运算符与表达式

目标 在程序中定义合适的标识符 理解3种基本数据类型并能正确地使用 根据需要定义变量 正确地构造表达式

引例 已知三角形的三条边,计算它的周长与面积。 分析:逐步求精,分解,逐步逼近。 根据第1章讨论的知识,我们知道Java程序是由类组成的。因此可以将问题转化为“设计一个计算三角形周长与面积的类”。 先假设类已经定义好了,直接考虑如何根据需要处理数据。

{ public static void main (String[] args) { int a,b,c,p; float area; //文件名Ex2_1.java import java.io.*; public class Ex2_1 { public static void main (String[] args) { int a,b,c,p; float area; a=8; b=5; c=10; p=a+b+c; area=(float)Math.sqrt((p-a)*(p-b)*(p-c)*p/2); System.out.println("The length of three side is"+a+","+b+","+c); System.out.println("The sides of triangle is:"+p); System.out.println("The area of triangle is:"+area); } 引入类 定义主类 定义main()方法 声明变量 给变量a、b、c赋值 计算周长和面积 输出结果

标识符 标识符可以由字母、数字、下划线(_)及美元符号($)按一定的顺序组合而成,但不能以数字开头。 average、table12、$price等均为有效的标识符 5_step则为非法标识符。 Java语言对标识符还有如下规定: 标识符的长度不限,但不宜过长。 一般遵循“见名知义”原则,即为标识符取一个能代表其意义的名称。 标识符区分字母的大小写。如Student和student是两个不同的标识符。 标识符不能是关键字。

关键字 关键字是指被系统所保留使用并赋予特定意义的一些标识符,这些关键字不能被编程人员用作标识符。它们只能按照预先定义好的方式使用,不能作为其他用途。 true、false、null cast、future、generic、inner、operator、outer、rest、var

Java基本数据类型 Java中的数据类型分为基本数据类型和复杂数据类型两类。 基本数据类型包括数值型、字符型及布尔型。 复杂数据类型包括类、接口和数组等,也称为引用类型,即通过对象的创建,获得引用类型的值。

数值型(一) Java的数值型数据又分为整数和浮点数两种类型,整数不带小数点,浮点数含有小数点。 整数有byte(字节型)、short(短整型)、int(整型)及long(长整型)等4种。在数值后加l或L表示该数值是long类型 浮点型数据有float(单精度浮点型)和double(双精度浮点型)两种。在数值后面加一个F或者f表示float类型的数据 Java默认所有的浮点值属于double类型的数据。 例如: int i=3; long j=26L; double k=0.5 float m=5.0f;

数值型(二) 存储数据要占用一定的存储空间,不同类型的数据所占用的存储空间不同。所有数值类型依据其占用的内存空间大小进行区分。在设计程序的过程中,程序员需要选择大小合适的变量类型,否则有可能造成内存空间的浪费。

字符型 Java中的字符型数据用char表示,它的值用16个bit来存储,取值范围是0~65536。它表示的是Unicode码表所定义的国际化字符集中所收集的所有字符。 Java中的字符可以比较大小,类似于ASCII码的大小比较。 例如,char grade1='A', grade2='B'; Java用单引号来表示字符型数据。如'A'、'c'、'#'、'&'与'9'等等。

布尔型 布尔型(boolean)是一种表示逻辑值的简单数据类型。它的取值只能是常量true或false这两个值中的一个,在存储器中占8个bit。通常用于程序中的一些逻辑判断从而对程序的运行进行控制。 例如,根据成绩的及格线60分,判断考试是否通过。 int grade; boolearn passing; if (grade>=60) passing=true; else passing=false;

常量 常量(constant),顾名思义就是在程序运行过程中其值不会被改变的量,常量也叫常数,也被称为“字面量”。在Java语言中,常量按其数据类型可分为整型常量、浮点型常量、字符型常量、字符串常量与布尔型常量等5种类型。 整型常量和浮点型常量都属于数值型。 字符型常量是指Unicode字符集中的所有单个字符,包括可以打印的字符和不可打印的控制字符。

字符常量 字符型常量的表示形式有四种: (1)以单引号括起来的单个字符,如‘a’。 (2)以单引号括起来的“\”加三位八进制数,形为'\ddd',其中d可以是0~7中的任一个数,如'\141'表示字符'a'。其中ddd的取值范围只能在八进制数的000~777之间,因而它不能表示出Unicode字符集中的全部字符。 (3)以单引号括起来的“\u”加四位十六进制数,可以表示出Unicode字符集中的所有字符。 (4) 对于那些不能被直接包括的字符以及一些控制字符,如‘\\’、‘\’’。

字符串常量 final 数据类型 常量名称=常量值; 字符串常量就是用双引号括起来的由零到多个字符组成的字符序列。如“Hello World!”,“I am a programmer.\n”等。字符常量的八进制、十六进制表示法和转义序列在字符串中同样可用。 布尔型常量只有两个值,true和false。 常量定义格式: final 数据类型 常量名称=常量值;

常量举例 例2.2 一套房子每天的租金是45.6元,如果租30天,试编程计算应付房租。 public class Ex2_2 { public static void main(String args[]) final int Day=30; final double Pay=45.6; final String Str="It is begin!"; double total; total=Day*Pay; System.out.println(Str); System.out.println("*_________________________*"); System.out.println("Day="+Day+"\tPay="+Pay); System.out.println("total="+total); } 定义了三个常量

变量 变量(variables)是Java程序中的一个基本存储单元,是在程序运行过程中其值可以改变的量。 一个变量蕴含有三个含义: (1)变量的名称。变量的名称简称变量名,变量名是用户自己定义的标识符,它表明了变量的存在性和唯一性; (2)变量的属性。即变量的数据类型; (3)变量的值。是指存放在变量名所标记的存储单元中的数据。 例如,int math=78,english=80;

//字符型变量和布尔型变量的定义及赋值 public class Ex2_4 { public static void main(String args[]) { char c1='a'; char c2='\141'; char c3='\u0061'; char c4='\\'; boolean f1=true,f2; f2=4<3; System.out.println(“字符型变量的值:c1=” +c1+ “c2=” +c2+ “c3=” +c3); System.out.println(“字符型变量的值:c4=”+c4); System.out.println(“布尔型变量的值:f1=” +f1+“f2=”+f2); } 程序中定义了四个字符型变量,用关键字char 定义字符型变量,其中c1、c2、c3的定义分别使用字符型的三种表示方法,c1以单引号括起来,c2以十六进制表示,c3以Unicode编码表示,运行结果均是字符'a'。c4用转义字符输出'\'。布尔型变量f1定义时赋值为true,f2赋值为4<3,这是一个比较表达式,结果为false。

赋值语句 赋值语句的一般形式为: 例子: 变量名=表达式; float value, price; value=0.0f; //value初值为0 price=0.5f; value=12*price; 变量名=表达式; 赋值语句执行的过程中,先计算出表达式的值,然后把该值存储到赋值运算符(=)左边的变量所代表的存储单元,并覆盖其原有的值。

类型转换——自动转换 自动转换是在程序运行过程中不需人为干预而自动进行的从一种数据类型到另一种数据类型的转换。有两种类型: 赋值转换 两种数据类型必须是兼容的,并且目标数据类型的取值范围比源数据类型的取值范围大。 表达式中的自动转换 short a,b; a=50; b=a/2; int a; float b; double c; c=a+b+c; 低-------------------------------------------->高 byte,short,char->int->long->float->double

类型转换——强制类型转换 对于不能自动进行的类型转换,就要强制类型转换。 强制类型转换的一般格式为: (目标数据类型)被转换数据 其中,目标数据类型是指要将被转换数据转换成的数据类型;被转换数据可以是变量、表达式等。 如要把double型变量money的值转换成int型,形式为:(int)money。 (目标数据类型)被转换数据

//从键盘读入一个字符,并输出这个字符。 import java.io.*; public class Ex2_6 { public static void main(String args[]) { char ch=‘ ’; System.out.println("Input a interger or character:"); try ch=(char)System.in.read(); //从键盘中读入一个字符 } catch (IOException e){ } System.out.println("The input is \’"+ch+"\’"); 程序定义了一个字符型变量ch,接收输入的字符。System.in.read()表示从键盘输入流中读入一个字节并返回它的值,返回值是0到255的int 值,需要进行异常处理。由于返回值为int型,因此要输出这个字符,须强制转换为char型。程序中用了try-catch语句进行异常处理。

运算符与表达式 一个常量或一个变量是最简单的表达式。 一般的表达式是指由数据和运算符连接在一起的符合Java语法规则的式子。如a=1、a+b-c*d、a<b等。这里的数据是常量或变量,表达式中数据的连接符+、-、*、=及<就是运算符。 Java的运算符主要包括算术运算符、关系运算符、逻辑运算符等,Java表达式主要有算术表达式、关系表达式、逻辑表达式、赋值表达式等。

算术运算符和算术表达式 单目运算符是指只对一个操作数运算的运算符。包括: ++(自增),a++、a-- :表示先使用a,再使a增(减)1; -(取反),a=1,b=-a(即b=-1) 双目运算符是指算术运算符的左、右两边均要有操作数。包括:+(和运算)、-(差运算)、*(积运算)、/(除运算)及%(求余运算)。 算术运算符连接的操作数为数值型。由算术运算符连接的式子称为算术表达式。

算术运算示例 public class Ex2_7 { public static void main(String args[]) { char a=97; int b,c=14, f=3; float d=0.6f, e, g; a++; b=c/f; c=c%f; d++; e=f*d; g=e%f; System.out.println("a="+a); System.out.println("b="+b); System.out.println("c="+c); System.out.println("d="+d); System.out.println("e="+e); System.out.println("g="+g); } }

关系运算符和关系表达式 关系运算符:用来比较两个值之间的大小关系。关系运算的结果是布尔(boolean)型,为真(true)或假(false)。 Java中关系运算符有6种: ==、!=、>、<、>=、<= 例如, int a=5, b=8; boolean c=a>b; 则结果c=false。

逻辑运算符和逻辑表达式 Java中共有6个逻辑运算符:!、&、^、|、&&、|| 。 如果它们的操作数是布尔类型的数据,其结果也是布尔类型。 &&和||也被称为“短路逻辑运算符”,在运算过程中会产生“短路效应”: a&&b,当a为false时不再判断b,直接判断a&&b的值为false; a||b,当a为true时不再判断b,直接判定a||b的值为true。 另外,当&、^和|的操作数为整数及字符时,它们会作为位运算符进行位运算。

关系表达式和逻辑表达式举例 public class Ex2_8 { public static void main(String args[]) { int a=3,b=8;   boolean c,d,e=false,f1,f2,g=true; c=a>b; d=c&&(e=a<b);   //c为false,e值未被改变   f1=g||(e=a<b);   //g为true,e值未被改变   f2=f1|(g=a>b);   //g值被改变   System.out.println("a="+a); System.out.println("b="+b); System.out.println("a>b="+c); System.out.println("c&&(e=a<b)="+d); System.out.println("e="+e); System.out.println("f="+f); System.out.println("g="+g); }

三元运算符 Java中,有一种特别的三元运算符构成的条件表达式。使用格式如下: 其中的?和:称为三元运算符,它们必须一同出现,此运算符需要三个操作数。其中语句1和语句2可以是复合语句。意思是,当条件表达式值为true时,执行语句1,否则执行语句2。 例如,(a>b)?a: (c>d)?c: d 其中a=5,b=8,c=1,d=9。根据右结合性,应先计算(c>d)?c:d。因为1>9为false,故取d=9为该表达式的结果。再计算(a>b)?a:d,结果为9。 条件表达式 ? 语句1 : 语句2

位运算符 Java中可以使用位运算直接对整数类型和字符类型的数据的位进行操作。 包括:~、<<、>>、>>>、&、^、|。 计算机中的数是以补码表示的。正数的补码就是其原码,负数的补码是其对应的正数按位取反(1变为0,0变为1)后再加1。

赋值运算符和赋值表达式 赋值运算符:= 。例如,a=b就是把变量b的值赋给变量a,则b与a的值相同,a原来的值丢弃。 扩展的赋值运算符 使程序表达简练,提高程序的编译速度。 就是把赋值运算符与算术运算符、逻辑运算符或位运算符中的双目运算符结合起来而形成的赋值运算符。 扩展赋值运算符:+=、-=、*=、/=、%=、&=、^=、|=、<<=、>>=、>>>=

运算符优先级 在一个表达式中可能有多个数据与运算符,那么,计算这个表达式时应该先计算哪些后计算哪些呢?这就要为运算符规定它们的优先级。 Java运算符的运算级别共分为15级,其中1级优先级最高,15级最低。 3*18+4/2(运算结果为56 ) 3*(18+4)/2(运算结果为33 ) 因为括号级别最高,先计算括号里的数据,再按照算术运算的规则,相同级别的先左后右,先乘以3再除以2。

作业和实验 作业 实验 P41-5,6,7(2)(3) P42-8,9,10 名称:Java的基本数据类型和表达式 目的 熟悉JCreator环境的使用。 能正确定义、使用变量和表达式。