变量、数据类型、运算符

上传人:今*** 文档编号:107463590 上传时间:2019-10-19 格式:PPT 页数:45 大小:2.46MB
返回 下载 相关 举报
变量、数据类型、运算符_第1页
第1页 / 共45页
变量、数据类型、运算符_第2页
第2页 / 共45页
变量、数据类型、运算符_第3页
第3页 / 共45页
变量、数据类型、运算符_第4页
第4页 / 共45页
变量、数据类型、运算符_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《变量、数据类型、运算符》由会员分享,可在线阅读,更多相关《变量、数据类型、运算符(45页珍藏版)》请在金锄头文库上搜索。

1、第二章 变量、数据类型、运算符,周舟,本章目标,关键字、标识符 掌握变量和常量 会使用常用数据类型 int, double, char, String 会使用基本运算符 赋值运算符,算术运算符 会进行数据类型转换,Java语言基础组成,关键字 标识符 注释 常量和变量,运算符 语句 函数 数组,关键字,关键字,标识符,在程序中自定义的一些名称。 由26个英文字母大小写,数字:0-9 符号:_ $ 组成 定义合法标识符规则: 1,数字不可以开头。 2,不可以使用关键字。 Java中严格区分大小写。 注意:在起名字的时,为了提高阅读性,要尽量有意义。,常量与变量,常量表示不能改变的数值。 Java

2、中常量的分类: 1,整数常量。所有整数 2,小数常量。所有小数 3,布尔型常量。较为特有,只有两个数值。true false。 4,字符常量。将一个数字字母或者符号用单引号( )标识。 5,字符串常量。将一个或者多个字符用双引号标识。 6,null常量。只有一个数值就是:null. 对于整数:java有三种表现形式。 十进制:0-9 ,满10进1. 八进制:0-7 ,满8进1. 用0开头表示。 十六进制:0-9,A-F,满16进1. 用0x开头表示。,电脑使用内存来记忆计算时所使用的数据 内存如何存储数据? 内存像旅馆 数据各式各样,要先根据数据的需求(即类型)为它申请一块合适的空间,1、开房

3、间(单人间、双人间、总统套间) 2、入住,内存如何存放数据,1000*(1+5%),1000,1050,变量:一个数据 存储空间的表示,对于专业程序员,数据存入内存不算完: 怎么找到存入的数据? 存进去还能改吗?,98.76,不同数据存入具有不同 内存地址的空间,相互独立,在银行存1000元钱,银行一年的利息5%,那一年之后钱变成了多少?,变量,为什么需要变量,内存地址不好记,怎么办? 通过内存中小房间的别名找到数据存储的位置 变量是存储数据的一个基本单元,房间,房间名字,房间类型,入住的客人,变量,变量名,变量类型,变量值,对应,变量,变量的概念: 内存中的一个存储区域 该区域有自己的名称(

4、变量名)和类型(数据类型) 该区域的数据可以在同一类型范围内不断变化 为什么要定义变量: 用来不断的存放同一类型的常量,并可以重复使用 使用变量注意: 变量的作用范围(一对之间有效) 初始化值 定义变量的格式: 数据类型 变量名 = 初始化值; 注:格式是固定的,记住格式,以不变应万变。 理解:变量就如同数学中的未知数。,1、字母 2、下划线_ 3、$ 符号,首字母,任意多的: 1、数字 2、字母 3、下划线_ 4、$ 符号,其余部分,变 量 名,变量命名规范: 简短且能清楚地表明变量的作用,通常第一个单词的首字母小写,其后单词的 首字母大写。例如:myScore,变量命名规则,变量命名规则,

5、检查下面这些是否是合法的变量名,principal,cost_price,marks_3,$lastname,city,123rate,discount%,zip code,City,int,命名规则,Java中的名称规范: 包名:多单词组成时所有字母都小写。 xxxyyyzzz 类名接口名:多单词组成时,所有单词的首字母大写。 XxxYyyZzz 变量名和函数名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写。 xxxYyyZzz 常量名:所有字母都大写。多单词时每个单词用下划线连接。 XXX_YYY_ZZZ,变量应用,1、在内存中存储本金1000元 2、显示内存中存储

6、的数据的值,public class Helloworld public static void main(String args) int money = 1000; /存数据 ,数据类型,变量名,内存空间存的数值,System.out.println(money); /使用数据,变量的声明和赋值,使用变量的步骤: 第一步:声明一个变量 第二步:赋值 第三步:使用变量,数据类型 变量名 = 数值;,根据类型开辟空间,将数据存入空间,取出数据使用,数据类型 变量名; 变量名 = 数值;,int money = 1000;,int money; money = 1000 ;,Java常用数据类型

7、,Java语言是强类型语言,对于每一种数据都定义了明确的具体数据类型,在内存总分配了不同大小的内存空间 整数默认:int 小数默认:double,数据类型说明,数据类型的使用,输出Java课考试最高分:98.5 输出最高分学员姓名:张三 输出最高分学员性别:男,public class Helloworld public static void main(String args) double score = 98.5; String name = “张三“; char sex = 男; System.out.println(“本次考试成绩最高分: “ + score); /输出其他 ,单引号

8、,双引号,连接输出信息,public class Helloworld public static void main(String args) String title; System.out.println( title ); ,String title; /声明变量title title = “Java“ ; /赋值,String title = “Java“; /声明变量title并赋值,1,2,先声明变量并赋值, 然后才能使用,代码错误,正确方案,常见错误1,变量名不能以%开始,public class Helloworld public static void main(Strin

9、g args) int %hour = 18; System.out.println(%hour); ,代码错误,常见错误2,public class Helloworld public static void main(String args) String name = “张三“; String name = “李四“; ,声明两个同名变量导致编译错误,String name = “张三“; String Name = “李四“;,Java程序区分大小写,正确方案,常见错误3,public class Helloworld public static void main(String ar

10、gs) byte b = 2; System.out.println(b); byte c = 300; System.out.println(c); ,常见错误4,代码错误,错误:可能损失精度,赋值超出范围,常见错误5,public class Helloworld public static void main(String args) long l = 1234567890123; System.out.println(l); float f = 2.3; System.out.println(f); ,long l = 1234568982323l;,float f = 2.3f ;默

11、认为double类型,小结1,定义变量有哪两种方式?,使用变量存储以下MP3信息,并打印输出 品牌(brand):爱国者F928 重量(weight):12.4 电池类型(type):内置锂电池 价格(price):499,自动类型转换,某班第一次Java考试平均分81.29,第二次比第一次多2分,计算第二次考试平均分?,double firstAvg = 81.29; /第一次平均分 double secondAvg; /第二次平均分 int rise = 2; secondAvg = firstAvg + rise; System.out.println(“第二次平均分是:“ + seco

12、ndAvg);,类型提升规则,在某种条件下,系统自动完成类型转换 两种类型兼容 例如:int 和 double 兼容 目标类型大于源类型 例如:double 型 大于 int 型 对于表达式 如果一个操作数为double型,则整个表达式可提升为double型,int before = 20; /apple笔记本市场份额 double rise = 9.8; /增长的份额 int now = before + rise; /现在的份额,int now = before + (int)rise;,去年Apple笔记本所占的市场份额是20,今年增长的市场份额是9.8,求今年所占的份额?,编译出错:不

13、能完成 自动类型转换,(类型名)表达式,强制类型转换,int b = (int)10.2; double a = 10; int c = (int)a;,更改为,强制类型转换,强制类型转换,类型转换,自动类型转换(也叫隐式类型转换) 强制类型转换(也叫显式类型转换) 类型转换的原理 什么时候要用强制类型转换? 表达式的数据类型自动提升 所有的byte型、short型和char的值将被提升到int型。 如果一个操作数是long型,计算结果就是long型; 如果一个操作数是float型,计算结果就是float型; 如果一个操作数是double型,计算结果就是double型。 分析 System.o

14、ut.println(a)与System.out.println(a+1) 的区别,类型转换,自动类型提升 byte b = 3; int x = 4; x = x + b;/b会自动提升为int类型进行运算。,类型转换,强制类型转换 byte b = 3; b = b + 4;/报错 b = (byte)(b+4);/强制类型转换,强制将b+4的结果转换为byte类型,再赋值给b。,类型转换,思考: byte b = 4; b = 3+4; byte b1=3,b2=4; b=b1+b2; Int x ; x = b1+b2; int x1=10,x2=98; x = x1 +x2; 哪句是

15、编译失败的呢?为什么呢?,int age = 19; char sex = 女; char result = age + sex;,常见错误,下面语句正确吗?,int a = 10; int b = 10.2; double c = 10; c = a; int d = c;,int 不可以自动转换成char,double不可以自动转化成int,字符类型运算,System.out.println(a); System.out.println(a+1); System.out.println(你+1);,实现一个数字加密器,加密规则是: 加密结果 = (整数*10+5)/2 + 3.14159 加密结果仍为一整数,小结2,算术运算符,基本的算术运算 某学员3门课成绩如右表所示,编程实现: 1、Java课和SQL课的分数之差 2、3门课的平均分,算术运算符,public class Helloworld public static void main(String args) int stb = 89; /STB分数 int java = 90; /Java分数 int sql = 60; /SQL分数 int diffen; /分数之差 double avg; /平均分 /省略输出成绩单代码 diffen = java - sql

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号