第3章 Java语言基础(第3版)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
-2 147 483 648~2 147 483 647,即-231~231-1
-9 223 372 036 854 775 808~9 223 372 036 854 775 807,即-263~263-l
浮点型
标准计数法和科学计数法。
类 型 数据位 范 围
float(单精度浮点)(f或F)
double(双精度浮点)(默认)
18
☻输入多个数据
为了简化输入操作,从Java SE 5版本开始在java.util类库中新 增了一个类专门用于输入操作的类Scanner,可以使用该类 输入一个对象。
//方法2:App3_6.java 由键盘输入多个数据 import java.util.*; //加载java.util类库里的所有类 public class App3_6 { public static void main(String[] args) { int num1; double num2; Scanner reader=new Scanner(System.in); System.out.print("请输入第一个数:"); num1= reader.nextInt(); //将输入的内容做int型数据赋值给变量num1 System.out.print("请输入第二个数:"); num2= reader.nextDouble(); //将输入的内容做double型数据赋值给变量num2 System.out.println(num1+"*"+num2+"="+(num1*num2)); 19 } }
15
☻输入多个数据
//方法1:App3_5.java 由键盘输入多个数据 import java.io.*; public class App3_5 { public static void main(String[] args) throws IOException { int num1,num2; String str1,str2; InputStreamReader in; in= new InputStreamReader(System.in); BufferedReader buf; buf=new BufferedReader(in); System.out.print("请输入第一个数:"); str1=buf.readLine(); //将输入的内容赋值给字符串变量str1 num1=Integer.parseInt(str1); //将str1转成int类型后赋给num1 System.out.print("请输入第二个数:"); str2=buf.readLine(); //将输入的内容赋值给字符串变量str2 num2=Integer.parseInt(str2); //将str2转成int类型后赋给num2 System.out.println(num1+"*"+num2+"="+(num1*num2)); }
字符串常量 双引号。
常量的声明
final int MAX = 10; final float PI =3.14f;
8
变量声明、初始化、赋值
如:int i, j=0; i = 8; float k; k = 3.6f; Java 语言程序中可以随时定义变量,不必集中在执行 语句之前。
9
数值型不同类型数据的转换
int MyInt=1234; //定义整形变量MyInt String MyString=""+MyInt; //将整型数据转换成了字符串
11
由键盘输入的数据,不管是文字还是数字,Java皆视为 字符串,因此若是要由键盘输入数字则必须再经过转换。 输入字符串
import java.io.*; public class class_name //类名称 { public static void main(String[] args) throws IOException { …… String str; InputStreamReader inp; inp=new InputStreamReader(System.in); BufferedReader buf; buf=new BufferedReader(inp); …… str=buf.readLine(); …… }
自动类型转换
①转换前的数据类型与转换后的类型兼容。 ②转换后的数据类型的表示范围比转换前的类型大。 条件②说明不同类型的数据迚行运算时,需先转换为同 一类型,然后迚行运算。转换从“短”到“长”的优先 关系为:byte→short→char→int→long→float→double 强制类型转换 如果要将较长的数据转换成较短的数据时(不安全), 就要迚行强制类型转换。强制类型转换的格式如下:
14
☻输入数值 由于从键盘输入的数据均被视为字符串,所以从键盘上 输入的数据,必须先利用表3.7中所提供的方法迚行转 换后,字符串的内容才会变成数值。
//App3_4.java 由键盘输入整数 import java.io.*; public class App3_4 { public static void main(String[] args) throws IOException { float num; String str; BufferedReader buf; buf=new BufferedReader(new InputStreamReader(System.in)); System.out.print("请输入一个实数:"); str=buf.readLine(); //将输入的文字指定给字符串变量str存放 num= Float.parseFloat(str); //将str转换成float类型后赋给num System.out.println("您输入的数为:"+num); }
16
为了简化输入操作,从Java SE 5版本开始在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(); …… } }
引用数据类型(复合数据类型)
在内存中存放的是指向该数据的地址,不是数据值本身。 类、数组、接口等。
4
整型
类 型 数据位 8 16 32 64 范 -128~127,即-27~27-1 围 byte(字节型) short(短整型) int(整型)(默认) long(长整型)(l或L)
-32768~32767,即-215~215-1
17
在该结构中用创建的reader对象调用nextDouble()方法来读取 用户从键盘上输入的double型数据,也可用reader对象调用下列方 法,读取用户在键盘上输入的相应类型的数据: nextByte() nextDouble() nextFloat() nextInt() nextLong() nextShort() next() nextLine()。
13
由键盘输入的数据,不管是文字还是数字,Java皆视为 字符串,因此若是要由键盘输入数字则必须再经过转换。 输入字符串
//appA_3.java 由键盘输入字符串 import java.io.*; //加载java.io类库里的所有类 public class App3_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); //输出字符串 } }
32
64
1.4E-45~3.4E+38
4.9E-324~1.8E+308
5
逻辑型(boolean布尔型)
只有true( “真”)和false( “假” )两个取值。true和
false不能转换成数字表示形式。占1个字节,默认false。
编码方式:ASCII码(字符) ☻字符型(char) GB2312国标编码(汉字) Unicode新的国际标准编码 用来存储单个字符。采用的是Unicode字符集编码方案,在 (中英文) 内存中占2个字节。
12
这种输入数据的方式可变形为如下的格式
import java.io.*; public class class_name //类名称 { public static void main(String[] args) throws IOException { …… String str; BufferedReader buf; buf=new BufferedReader(new InputStreamReader(System.in)); …… str=buf.readLine(); …… } }
上例中,reader对象还可以调用nextByte()、nextFloat()、
nestDouble()、nextInt()等。
next×××()被调用后,则等待用户在命令行输入数据并
按回车键(或空格键、Tab键)确认。
next()和nextLine()方法表示等待用户在键盘上输入一
2
数据类型的基本要素 数据的性质(数据结构) 数据的取值范围(字节大小) 数据的存储方式 参与的运算 变量的属性 名字 类型 值 地址
3
基本数据类型
由程序设计语言系统所定义、不可再划分的数据类型。所占 内存大小是固定的,与软硬件环境无关。在内存中存放的是数 据值本身。 整型: byte short int long 浮点型: float double 逻辑型: boolean 字符型:char
字符声明只能表示单个字符,用单引号。
Unicode字符采用\u0000 ----\uFFFF之间的十六进制表示。 Java语言中所有可见的ASCII字符都可以用单引号括起来 Unicode字符表的前128个刚好是ASCII表。
成为字符。
字符型数据可以转化为整型。
6
关键字(保留字) 见教材表3.5 (都是小写) 标识符 用来表示变量名、类名、方法名、数组名和文件名的 有效字符序列 。 规定:
(欲转换的数据类型)变量名
10
字符串型数据与整型数据相互转换 字符串转换成数值型数据(见教材表3.7)
String MyNumber = “1234.56”; float MyFloat = Float.parseFloat(MyNumber);
数值型数据转换成字符串
在Java语言中,字符串可用加号“+”来实现连接操 作。所以若其中某个操作数不是字符串,该操作在连 接之前会自动将其转换成字符串。所以可用加号来实 现自动的转换。
可以由字母、数字、下划线(—)、美元符号($)组合而成。
必须以字母、下划线或美元符号开头,不能以数字开头。 关键字不能当标识符使用。 区分大小写。
编码习惯:类名首字母大写,变量、方法及对象首字母 小写。
7
整型常量 (八迚制、十六迚制、十迚制长整型后需要加l或L) 浮点型常量(单精度后加f或F,双精度后加d或D可省略) 逻辑型常量 字符型常量 单引号。(转义字符见教材表3.6)
数据类型变量基本类型变量数据类型的转换规则从键盘输入数据的语句格式运算符数据类型的基本要素数据的性质数据结构数据的取值范围字节大小数据的存储方式参与的运算变量的属性名字类型基本数据类型由程序设计语言系统所定义不可再划分的数据类型
第3章 Java语言基础
☻数据类型 ☻变量 ☻基本类型变量 ☻数据类型的转换规则 ☻从键盘输入数据的语句格式 ☻运算符
相关文档
最新文档