版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
Java程序的基本輸入輸出標準輸入輸出Scanner輸入對話框輸入輸出Java語言將輸入輸出功能封裝在若干個標準類中,這樣既符合面向對象的設計思想,又便于用戶的掌握,并為未來的擴展提供了足夠的空間。輸入輸出是應用程序與用戶交互的主要途徑,在Java程序中,可以在字符界面和圖形用戶界面方式下實現(xiàn)輸入輸出功能。一、Java標準輸入輸出Java.lang.System類提供了3種有用的標準流System.inSystem.outSystem.err1.標準輸入流System.in用于程序的輸入,常用于記取用戶從鍵盤的輸入或用戶定義的輸入設備的輸入。常用的方法有:intread():返回一個字節(jié)數(shù)據(jù)intread(byte[]a):返回一組字節(jié)數(shù)據(jù),并保存于字節(jié)數(shù)據(jù)a中。Intread(byte[]a,int
off,int
len):將輸入流中最多l(xiāng)en
個數(shù)據(jù)字節(jié)讀入byte數(shù)組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("請輸入一個字節(jié)數(shù)據(jù):");try{by=System.in.read();
System.out.println("輸入的第一個字節(jié)數(shù)據(jù)是:"+by);
System.out.println("對應的字符是:"+(char)by);}catch(IOExceptione){}}}二、輸入基本型數(shù)據(jù)在JDK5.0版本之前,實現(xiàn)字符界面的輸入操作也不是一件容易的事情。由于Java本身沒有直接提供通過鍵盤完成輸入各種數(shù)據(jù)類型數(shù)據(jù)的簡便接口,所以需要用戶利用若干個標準類自行編寫能夠解析各種數(shù)據(jù)類型數(shù)據(jù)的程序代碼,這給初學Java的人們帶來了不少困難。在JDK5.0版本中,Java增加了一個專門用于處理數(shù)據(jù)輸入的Scanner類,用戶利用它可以方便地實現(xiàn)各種數(shù)據(jù)類型的數(shù)據(jù)輸入。1.Scanner的構造方法在包java.util.Scanner
中構造方法1.Scanner(File
source)
構造一個新的Scanner,數(shù)據(jù)源是指定的文件。2.Scanner(InputStream
source)
構造一個新的Scanner,數(shù)據(jù)源是從指定輸入流。3.Scanner(String
source)
構造一個新的Scanner,數(shù)據(jù)源是指定字符串。例:Scannerinput=new
Scanner(System.in);
創(chuàng)建從鍵盤輸入數(shù)據(jù)的Scanner對象。2.常用方法java.util.Scanner類中的幾個用于讀取數(shù)據(jù)的成員方法方法描述StringnextLine()讀取輸入的下一行內容Stringnext()讀取輸入的下一個單詞int
nextInt()讀取下一個表示整數(shù)的字符序列,并將其轉換成int型longnextLone()讀取下一個表示整數(shù)的字符序列,并將其轉換成long型floatnextFloat()讀取下一個表示整數(shù)的字符序列,并將其轉換成float型doublenextDouble()讀取下一個表示浮點數(shù)的字符序列,并將其轉換成double型boolean
hasNext()檢測是否還有輸入內容boolean
hasNextInt()boolean
hasNextLong()檢測是否還有表示整數(shù)的字符序列boolean
hasNextFloat()boolean
hasNextDouble()檢測是否還有表示浮點數(shù)的字符序列例:importjava.util.*;publicclassAddressClass{publicstaticvoidmain(String[]arg){Scannerin=newScanner(System.in);//創(chuàng)建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的整數(shù),計算其階乘并輸出結果。importjava.util.Scanner;publicclassscanerfact{publicstaticvoidmain(Stringargs[]){
intn;Scannerin=new
Scanner(System.in);
System.out.print("請輸入一個不大于12的整數(shù):");
n=in.nextInt();if(n>12){
System.out.println("輸入的整數(shù)超出范圍!");
System.exit(0);}
System.out.println("數(shù)"+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類所提供的方法構造各種簡單的對話框可以進行了數(shù)據(jù)的輸入輸出。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。參數(shù):parentComponent-對話框的父Componentmessage-要顯示的Objecttitle-要在對話框的標題欄中顯示的StringmessageType-要顯示的消息類型:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGE
PLAIN_MESSAGE2.showMessageDialog方法消息對話框,用來顯示消息publicstaticvoidshowMessageDialog(Component
parentComponent,Object
message,String
title,int
messageType)throwsHeadlessException功能:調出對話框,它顯示使用由messageType
參數(shù)確定的默認圖標的message。參數(shù):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。參數(shù):parentComponent-確定在其中顯示對話框的Frame;如果為null或者parentComponent
不具有Frame,則使用默認的Framemessage-要顯示的Object返回:指示用戶所選選項的整數(shù)YES_OPTION=0NO_OPTION=1CANCEL_OPTION=22)publicstaticint
showConfirmDialog(Component
parentComponent,Object
message,String
title,int
optionType)throwsHeadlessException功能:調出一個由optionType
參數(shù)確定其中選項數(shù)的對話框。參數(shù):parentComponent-確定在其中顯示對話框的Fram
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- NB/T 11536-2024煤礦帶壓開采底板井下注漿加固改造技術規(guī)范
- 《市場調查課程考核》課件
- 《電化學催化》課件
- 《小學生說明文》課件
- 單位管理制度集合大合集【職員管理】十篇
- 單位管理制度匯編大合集【職工管理篇】
- 單位管理制度合并匯編職員管理篇
- 《淋巴結斷層解剖》課件
- 單位管理制度分享合集人事管理
- 單位管理制度范文大合集人員管理十篇
- 教師朗誦稿《幸?!?7篇)
- 數(shù)據(jù)安全應急響應與處置
- 2023漢邦高科安防產品技術參數(shù)和檢測報告
- 急診課件:急性呼吸困難完整版
- 唐詩宋詞鑒賞(第二版)PPT完整全套教學課件
- 超聲診斷學-乳腺超聲診斷
- 管工初賽實操
- 門診病歷書寫模板全
- 2023年房屋租賃管理模板
- 液壓與氣壓傳動中職PPT完整全套教學課件
- 國開大學2023年01月11067《知識產權法》期末考試答案
評論
0/150
提交評論