版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据转换与输入输出第1页,共14页,2023年,2月20日,星期六2数值型不同类型数据的转换自动类型转换①转换前的数据类型与转换后的类型兼容。②转换后的数据类型的表示范围比转换前的类型大。条件②说明不同类型的数据进行运算时,需先转换为同一类型,然后进行运算。转换从“短”到“长”的优先关系为:byte→short→char→int→long→float→double
强制类型转换
如果要将较长的数据转换成较短的数据时(不安全),就要进行强制类型转换。强制类型转换的格式如下:
数据类型转换(欲转换的数据类型)变量名第2页,共14页,2023年,2月20日,星期六3字符串型数据与整型数据相互转换
字符串转换成数值型数据(见教材表3.7)数值型数据转换成字符串
在Java语言中,字符串可用加号“+”来实现连接操作。所以若其中某个操作数不是字符串,该操作在连接之前会自动将其转换成字符串。所以可用加号来实现自动的转换。
数据类型转换StringMyNumber=“1234.56”;floatMyFloat=Float.parseFloat(MyNumber);intMyInt=1234;//定义整形变量MyIntStringMyString=""+MyInt;//将整型数据转换成了字符串
第3页,共14页,2023年,2月20日,星期六4
由键盘输入的数据,不管是文字还是数字,Java皆视为字符串,因此若是要由键盘输入数字则必须再经过转换。
输入字符串
由键盘输入数据importjava.io.*;publicclassclass_name//类名称{publicstaticvoidmain(String[]args)throwsIOException{……Stringstr;InputStreamReaderinp;inp=newInputStreamReader(System.in);BufferedReaderbuf;buf=newBufferedReader(inp);……str=buf.readLine();……}}第4页,共14页,2023年,2月20日,星期六5
这种输入数据的方式可变形为如下的格式
importjava.io.*;publicclassclass_name//类名称{publicstaticvoidmain(String[]args)throwsIOException{……Stringstr;BufferedReaderbuf;buf=newBufferedReader(newInputStreamReader(System.in));……str=buf.readLine();……}}第5页,共14页,2023年,2月20日,星期六6由键盘输入的数据,不管是文字还是数字,Java皆视为字符串,因此若是要由键盘输入数字则必须再经过转换。
输入字符串
由键盘输入数据//appA_3.java由键盘输入字符串importjava.io.*;//加载java.io类库里的所有类publicclassApp3_3{publicstaticvoidmain(String[]args)throwsIOException{BufferedReaderbuf;
Stringstr;buf=newBufferedReader(newInputStreamReader(System.in));System.out.print("请输入字符串;");
str=buf.readLine();//将输入的文字指定给字符串变量str存放
System.out.println("您输入的字符串是:"+str);//输出字符串
}}第6页,共14页,2023年,2月20日,星期六7输入数值由于从键盘输入的数据均被视为字符串,所以从键盘上输入的数据,必须先利用表3.7中所提供的方法进行转换后,字符串的内容才会变成数值。
由键盘输入数据//App3_4.java由键盘输入整数importjava.io.*;publicclassApp3_4{publicstaticvoidmain(String[]args)throwsIOException{floatnum;Stringstr;BufferedReaderbuf;buf=newBufferedReader(newInputStreamReader(System.in));System.out.print("请输入一个实数:");
str=buf.readLine();//将输入的文字指定给字符串变量str存放
num=Float.parseFloat(str);//将str转换成float类型后赋给numSystem.out.println("您输入的数为:"+num);}}第7页,共14页,2023年,2月20日,星期六8输入多个数据
由键盘输入数据//方法1:App3_5.java由键盘输入多个数据importjava.io.*;publicclassApp3_5{publicstaticvoidmain(String[]args)throwsIOException{intnum1,num2;Stringstr1,str2;InputStreamReaderin;in=newInputStreamReader(System.in);BufferedReaderbuf;buf=newBufferedReader(in);System.out.print("请输入第一个数:");
str1=buf.readLine();//将输入的内容赋值给字符串变量str1
num1=Integer.parseInt(str1);//将str1转成int类型后赋给num1System.out.print("请输入第二个数:");
str2=buf.readLine();//将输入的内容赋值给字符串变量str2
num2=Integer.parseInt(str2);//将str2转成int类型后赋给num2System.out.println(num1+"*"+num2+"="+(num1*num2));}}第8页,共14页,2023年,2月20日,星期六9为了简化输入操作,从JavaSE5版本开始在java.util类库中新增了一个类专门用于输入操作的类Scanner,可以使用该类输入一个对象。
由键盘输入数据importjava.util.*;publicclassclass_name//类名称{publicstaticvoidmain(String[]args){Scannerreader=newScanner(System.in);doublenum;……num=reader.nextDouble();……}}第9页,共14页,2023年,2月20日,星期六10在该结构中用创建的reader对象调用nextDouble()方法来读取用户从键盘上输入的double型数据,也可用reader对象调用下列方法,读取用户在键盘上输入的相应类型的数据:nextByte()nextDouble()nextFloat()nextInt()nextLong()nextShort()next()nextLine()。
由键盘输入数据第10页,共14页,2023年,2月20日,星期六11输入多个数据为了简化输入操作,从JavaSE5版本开始在java.util类库中新增了一个类专门用于输入操作的类Scanner,可以使用该类输入一个对象。
由键盘输入数据//方法2:App3_6.java由键盘输入多个数据importjava.util.*;//加载java.util类库里的所有类publicclassApp3_6{publicstaticvoidmain(String[]args){intnum1;doublenum2;
Scannerreader=newScanner(System.in);System.out.print("请输入第一个数:");
num1=reader.nextInt();//将输入的内容做int型数据赋值给变量num1System.out.print("请输入第二个数:");
num2=reader.nextDouble();//将输入的内容做double型数据赋值给变量num2System.out.println(num1+"*"+num2+"="+(num1*num2));}}第11页,共14页,2023年,2月20日,星期六12
上例中,reader对象还可以调用nextByte()、nextFloat()、nestDouble()、nextInt()等。next×××()被调用后,则等待用户在命令行输入数据并按回车键(或空格键、Tab键)确认。next()和nextLine()方法表示等待用户在键盘上输入一行文本,然后返回一个String类型的数据。
第12页,共14页,2023年,2月20日,星期六13输入多个数据利用Scanner类,使用next()和nextLine()方法接收从键盘输入字符串型数据。
//App3_7.java由键盘输入多个数据importjava.util.*;//加载java.util类库里的所有类publicclassApp3_7{publicstaticvoidmain(String[]args){Strings1,s2;
Scannerreader=newScanner(System.in);System.out.print("请输入第一个数:");
s1=reader.nextLine();//将输入的内容作为字符型数据赋值给变量s1System.out.print("请输入第二个数:");
s2=reader.next();//按Enter键后next()方法将回车符和换行符去掉
System.out.println("输入的是
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026电网机械测控业务面试题及答案
- 工业机器人维护服务合同2026年制造业
- Unit 8 Making a Difference Section A 3a-3d 课件 2025-2026学年人教版英语八年级下册
- 鞭炮燃放供水供电抢修配合手册
- 教师教学质量监控规范实施手册
- 教师招聘(中学)考试附参考答案7
- 法律服务中心农民工维权服务工作手册(标准版)
- 游乐园游客摔伤骨折应急处理手册
- 银行贷款逾期风险防控手册
- 工厂生产计量器具管理手册
- 机加工车间关键尺寸稳定性分析规范
- (2025)昆士兰临床指南:引产术(V10)解读
- 2026福建厦门市政协办公厅招聘非在编辅助岗工作人员2人考试参考题库及答案解析
- 2025中国黄金集团黄金珠宝股份有限公司招聘笔试历年备考题库附带答案详解
- 慢阻肺患者呼吸肌训练器械使用
- 宠物食品制作技师试卷及答案
- (2025)医疗器械生产质量管理规范培训试卷带答案
- 龙舟饭由来课件
- 老年患者营养支持的伦理决策
- 2025年东北大学强基笔试试题及答案
- 2026年台州市黄岩经开投资集团有限公司下属公司公开招聘工作人员备考题库及一套完整答案详解
评论
0/150
提交评论