版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java程序的基本输入输出标准输入输出Scanner输入对话框输入输出Java语言将输入输出功能封装在若干个标准类中,这样既符合面向对象的设计思想,又便于用户的掌握,并为未来的扩展提供了足够的空间。输入输出是应用程序与用户交互的主要途径,在Java程序中,可以在字符界面和图形用户界面方式下实现输入输出功能。一、Java标准输入输出Java.lang.System类提供了3种有用的标准流System.inSystem.outSystem.err1.标准输入流System.in用于程序的输入,常用于记取用户从键盘的输入或用户定义的输入设备的输入。常用的方法有:intread():返回一个字节数据intread(byte[]a):返回一组字节数据,并保存于字节数据a中。Intread(byte[]a,int
off,int
len):将输入流中最多len
个数据字节读入byte数组2.标准输出流System.out用于程序的输出,通常用来在屏幕或用户指定的输出设备上显示信息。常用的方法有:System.out.print(data):输出data到指定的设备,不换行。System.out.println(data):输出data到指定的设备并换行。3.标准出错流System.err用于显示出错信息,常用方法同System.out。例:importjava.io.IOException;publicclassKeyin{staticintby;publicstaticvoidmain(Stringargs[])throwsIOException{inty;
System.out.print("请输入一个字节数据:");try{by=System.in.read();
System.out.println("输入的第一个字节数据是:"+by);
System.out.println("对应的字符是:"+(char)by);}catch(IOExceptione){}}}二、输入基本型数据在JDK5.0版本之前,实现字符界面的输入操作也不是一件容易的事情。由于Java本身没有直接提供通过键盘完成输入各种数据类型数据的简便接口,所以需要用户利用若干个标准类自行编写能够解析各种数据类型数据的程序代码,这给初学Java的人们带来了不少困难。在JDK5.0版本中,Java增加了一个专门用于处理数据输入的Scanner类,用户利用它可以方便地实现各种数据类型的数据输入。1.Scanner的构造方法在包java.util.Scanner
中构造方法1.Scanner(File
source)
构造一个新的Scanner,数据源是指定的文件。2.Scanner(InputStream
source)
构造一个新的Scanner,数据源是从指定输入流。3.Scanner(String
source)
构造一个新的Scanner,数据源是指定字符串。例:Scannerinput=new
Scanner(System.in);
创建从键盘输入数据的Scanner对象。2.常用方法java.util.Scanner类中的几个用于读取数据的成员方法方法描述StringnextLine()读取输入的下一行内容Stringnext()读取输入的下一个单词int
nextInt()读取下一个表示整数的字符序列,并将其转换成int型longnextLone()读取下一个表示整数的字符序列,并将其转换成long型floatnextFloat()读取下一个表示整数的字符序列,并将其转换成float型doublenextDouble()读取下一个表示浮点数的字符序列,并将其转换成double型boolean
hasNext()检测是否还有输入内容boolean
hasNextInt()boolean
hasNextLong()检测是否还有表示整数的字符序列boolean
hasNextFloat()boolean
hasNextDouble()检测是否还有表示浮点数的字符序列例:importjava.util.*;publicclassAddressClass{publicstaticvoidmain(String[]arg){Scannerin=newScanner(System.in);//创建Scanner类对象
System.out.printf("Enteryourname:");Stringname=in.nextLine();//输入姓名
System.out.printf("Enteryourtelephonenumber:");Stringtel=in.nextLine();//输入电话号码
System.out.printf("Enteryouraddress:");Stringaddress=in.nextLine();//输入通信地址
System.out.printf("Enteryourpostnumber:");Stringpost=in.nextLine();//输入邮政编码
System.out.println("Name:"+name);
System.out.println("Tel:"+tel);
System.out.println("Addr:"+address);
System.out.println("post:"+post);}}例:从键盘输入一个不大于12的整数,计算其阶乘并输出结果。importjava.util.Scanner;publicclassscanerfact{publicstaticvoidmain(Stringargs[]){
intn;Scannerin=new
Scanner(System.in);
System.out.print("请输入一个不大于12的整数:");
n=in.nextInt();if(n>12){
System.out.println("输入的整数超出范围!");
System.exit(0);}
System.out.println("数"+n+"的阶乘是"+fact(n));}staticlongfact(intn){longt=1;for(inti=1;i<=n;i++)
t=t*i;returnt;}}举例:输入某个三角形的3个边长,计算它的面积。为简单起见,假设输入的3个边长可以构成三角形,并且已知求三角形面积的公式为:其中,s=(a+b+c)/2//filename:TriangleClass.javaimportjava.util.*;publicclassTriangleClass{publicstaticvoidmain(String[]args){doublea,b,c,s,area;Scannerin=newScanner(System.in);
System.out.printf("Enter3edges:");a=in.nextDouble();b=in.nextDouble();c=in.nextDouble();s=(a+b+c)/2;area=Math.sqrt(s*(s-a)*(s-b)*(s-c));
System.out.printf("a=%7.2f,b=%7.2f,c=%7.2f\n",a,b,c);
System.out.printf("area=%10.2f\n",area);}}三、使用GUI界面输入输出利用javax.swing包中JOptionPane类所提供的方法构造各种简单的对话框可以进行了数据的输入输出。JOptionPane可以建立3种类型的对话框:Message对话框Confirm对话框input对话框JOptionPane类中的方法1.showInputDialog方法输入对话框,用来接受文本输入并用字符串存储格式:1)publicstaticString
showInputDialog(Object
message)throwsHeadlessException功能:显示请求用户输入的问题消息对话框。该对话框使用默认的边框,通常意味着在屏幕上居中显示。2)publicstaticString
showInputDialog(Object
message,
Object
initialSelectionValue)功能:显示请求用户输入的问题消息对话框,它带有已初始化为initialSelectionValue
的输入值。该对话框使用默认的窗体,通常意味着在屏幕上居中显示。3)publicstaticString
showInputDialog(Component
parentComponent,Object
message)throwsHeadlessException功能:显示请求用户输入内容的问题消息对话框,它以parentComponent
为父级。该对话框显示于Component的窗体的上部,通常位于Component之下。4)publicstaticString
showInputDialog(Component
parentComponent,Object
message,Object
initialSelectionValue)功能:显示请求用户输入内容的问题消息对话框,它以parentComponent
为父级。输入值将被初始化为initialSelectionValue。该对话框显示于Component的窗体的上部,通常位于Component之下。5)publicstaticString
showInputDialog(Component
parentComponent,
Object
message,String
title,int
messageType)throwsHeadlessException功能:显示请求用户输入内容的对话框,它以parentComponent
为父级,该对话框的标题为title,消息类型为messageType。参数:parentComponent-对话框的父Componentmessage-要显示的Objecttitle-要在对话框的标题栏中显示的StringmessageType-要显示的消息类型:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGE
PLAIN_MESSAGE2.showMessageDialog方法消息对话框,用来显示消息publicstaticvoidshowMessageDialog(Component
parentComponent,Object
message,String
title,int
messageType)throwsHeadlessException功能:调出对话框,它显示使用由messageType
参数确定的默认图标的message。参数:parentComponent-确定在其中显示对话框的Frame;如果为null或者parentComponent
不具有Frame,则使用默认的Framemessage-要显示的Objecttitle-对话框的标题字符串messageType-要显示的消息类型:ERROR_MESSAGE、INFORMATION_MESSAGE、WARNING_MESSAGE、QUESTION_MESSAGE或PLAIN_MESSAGE3.showConfirmDialog方法确认对话框,询问问题,带有Yes、No和Cancel按钮1)publicstaticint
showConfirmDialog(Component
parentComponent,Object
message)throwsHeadlessException功能:调出带有选项Yes、No
和Cancel
的对话框;标题为SelectanOption。参数:parentComponent-确定在其中显示对话框的Frame;如果为null或者parentComponent
不具有Frame,则使用默认的Framemessage-要显示的Object返回:指示用户所选选项的整数YES_OPTION=0NO_OPTION=1CANCEL_OPTION=22)publicstaticint
showConfirmDialog(Component
parentComponent,Object
message,String
title,int
optionType)throwsHeadlessException功能:调出一个由optionType
参数确定其中选项数的对话框。参数:parentComponent-确定在其中显示对话框的Fram
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024标准股权质押合同范本
- 旅游景区草坪维护协议
- 地下购物中心锚杆施工合同
- 海洋能发电海域租赁合同
- 湿地保护用地供应管理实施办法
- 遗赠抚养协议书个人品牌传承
- 农业研究休假管理
- 债权转让及债权转让担保协议
- 舞台灯光设备租赁合同范本
- 建筑工地土方压实强夯服务合同
- 二十届三中全会精神知识竞赛试题及答案
- 《生物安全培训》课件-2024鲜版
- 中国农业文化遗产与生态智慧智慧树知到期末考试答案章节答案2024年浙江农林大学
- 慢阻肺健康知识宣教完整版课件
- 神奇的大脑PPT课件
- 增值税预缴税款表电子版
- 小学五年级(上册)数学期末试卷附命题意图说明
- 金属学与热处理课后习题答案(机械工业出版社)第二版
- 普通发票销售清单
- 测量复核记录
- 医院建设“清廉科室”实施方案
评论
0/150
提交评论