java基本的輸入輸出_第1頁(yè)
java基本的輸入輸出_第2頁(yè)
java基本的輸入輸出_第3頁(yè)
java基本的輸入輸出_第4頁(yè)
java基本的輸入輸出_第5頁(yè)
已閱讀5頁(yè),還剩17頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

Java程序的基本輸入輸出標(biāo)準(zhǔn)輸入輸出Scanner輸入對(duì)話框輸入輸出Java語(yǔ)言將輸入輸出功能封裝在若干個(gè)標(biāo)準(zhǔn)類(lèi)中,這樣既符合面向?qū)ο蟮脑O(shè)計(jì)思想,又便于用戶的掌握,并為未來(lái)的擴(kuò)展提供了足夠的空間。輸入輸出是應(yīng)用程序與用戶交互的主要途徑,在Java程序中,可以在字符界面和圖形用戶界面方式下實(shí)現(xiàn)輸入輸出功能。一、Java標(biāo)準(zhǔn)輸入輸出Java.lang.System類(lèi)提供了3種有用的標(biāo)準(zhǔn)流System.inSystem.outSystem.err1.標(biāo)準(zhǔn)輸入流System.in用于程序的輸入,常用于記取用戶從鍵盤(pán)的輸入或用戶定義的輸入設(shè)備的輸入。常用的方法有:intread():返回一個(gè)字節(jié)數(shù)據(jù)intread(byte[]a):返回一組字節(jié)數(shù)據(jù),并保存于字節(jié)數(shù)據(jù)a中。Intread(byte[]a,int

off,int

len):將輸入流中最多l(xiāng)en

個(gè)數(shù)據(jù)字節(jié)讀入byte數(shù)組2.標(biāo)準(zhǔn)輸出流System.out用于程序的輸出,通常用來(lái)在屏幕或用戶指定的輸出設(shè)備上顯示信息。常用的方法有:System.out.print(data):輸出data到指定的設(shè)備,不換行。System.out.println(data):輸出data到指定的設(shè)備并換行。3.標(biāo)準(zhǔn)出錯(cuò)流System.err用于顯示出錯(cuò)信息,常用方法同System.out。例:importjava.io.IOException;publicclassKeyin{staticintby;publicstaticvoidmain(Stringargs[])throwsIOException{inty;

System.out.print("請(qǐng)輸入一個(gè)字節(jié)數(shù)據(jù):");try{by=System.in.read();

System.out.println("輸入的第一個(gè)字節(jié)數(shù)據(jù)是:"+by);

System.out.println("對(duì)應(yīng)的字符是:"+(char)by);}catch(IOExceptione){}}}二、輸入基本型數(shù)據(jù)在JDK5.0版本之前,實(shí)現(xiàn)字符界面的輸入操作也不是一件容易的事情。由于Java本身沒(méi)有直接提供通過(guò)鍵盤(pán)完成輸入各種數(shù)據(jù)類(lèi)型數(shù)據(jù)的簡(jiǎn)便接口,所以需要用戶利用若干個(gè)標(biāo)準(zhǔn)類(lèi)自行編寫(xiě)能夠解析各種數(shù)據(jù)類(lèi)型數(shù)據(jù)的程序代碼,這給初學(xué)Java的人們帶來(lái)了不少困難。在JDK5.0版本中,Java增加了一個(gè)專(zhuān)門(mén)用于處理數(shù)據(jù)輸入的Scanner類(lèi),用戶利用它可以方便地實(shí)現(xiàn)各種數(shù)據(jù)類(lèi)型的數(shù)據(jù)輸入。1.Scanner的構(gòu)造方法在包java.util.Scanner

中構(gòu)造方法1.Scanner(File

source)

構(gòu)造一個(gè)新的Scanner,數(shù)據(jù)源是指定的文件。2.Scanner(InputStream

source)

構(gòu)造一個(gè)新的Scanner,數(shù)據(jù)源是從指定輸入流。3.Scanner(String

source)

構(gòu)造一個(gè)新的Scanner,數(shù)據(jù)源是指定字符串。例:Scannerinput=new

Scanner(System.in);

創(chuàng)建從鍵盤(pán)輸入數(shù)據(jù)的Scanner對(duì)象。2.常用方法java.util.Scanner類(lèi)中的幾個(gè)用于讀取數(shù)據(jù)的成員方法方法描述StringnextLine()讀取輸入的下一行內(nèi)容Stringnext()讀取輸入的下一個(gè)單詞int

nextInt()讀取下一個(gè)表示整數(shù)的字符序列,并將其轉(zhuǎn)換成int型longnextLone()讀取下一個(gè)表示整數(shù)的字符序列,并將其轉(zhuǎn)換成long型floatnextFloat()讀取下一個(gè)表示整數(shù)的字符序列,并將其轉(zhuǎn)換成float型doublenextDouble()讀取下一個(gè)表示浮點(diǎn)數(shù)的字符序列,并將其轉(zhuǎn)換成double型boolean

hasNext()檢測(cè)是否還有輸入內(nèi)容boolean

hasNextInt()boolean

hasNextLong()檢測(cè)是否還有表示整數(shù)的字符序列boolean

hasNextFloat()boolean

hasNextDouble()檢測(cè)是否還有表示浮點(diǎn)數(shù)的字符序列例:importjava.util.*;publicclassAddressClass{publicstaticvoidmain(String[]arg){Scannerin=newScanner(System.in);//創(chuàng)建Scanner類(lèi)對(duì)象

System.out.printf("Enteryourname:");Stringname=in.nextLine();//輸入姓名

System.out.printf("Enteryourtelephonenumber:");Stringtel=in.nextLine();//輸入電話號(hào)碼

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);}}例:從鍵盤(pán)輸入一個(gè)不大于12的整數(shù),計(jì)算其階乘并輸出結(jié)果。importjava.util.Scanner;publicclassscanerfact{publicstaticvoidmain(Stringargs[]){

intn;Scannerin=new

Scanner(System.in);

System.out.print("請(qǐng)輸入一個(gè)不大于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;}}舉例:輸入某個(gè)三角形的3個(gè)邊長(zhǎng),計(jì)算它的面積。為簡(jiǎn)單起見(jiàn),假設(shè)輸入的3個(gè)邊長(zhǎng)可以構(gòu)成三角形,并且已知求三角形面積的公式為:其中,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類(lèi)所提供的方法構(gòu)造各種簡(jiǎn)單的對(duì)話框可以進(jìn)行了數(shù)據(jù)的輸入輸出。JOptionPane可以建立3種類(lèi)型的對(duì)話框:Message對(duì)話框Confirm對(duì)話框input對(duì)話框JOptionPane類(lèi)中的方法1.showInputDialog方法輸入對(duì)話框,用來(lái)接受文本輸入并用字符串存儲(chǔ)格式:1)publicstaticString

showInputDialog(Object

message)throwsHeadlessException功能:顯示請(qǐng)求用戶輸入的問(wèn)題消息對(duì)話框。該對(duì)話框使用默認(rèn)的邊框,通常意味著在屏幕上居中顯示。2)publicstaticString

showInputDialog(Object

message,

Object

initialSelectionValue)功能:顯示請(qǐng)求用戶輸入的問(wèn)題消息對(duì)話框,它帶有已初始化為initialSelectionValue

的輸入值。該對(duì)話框使用默認(rèn)的窗體,通常意味著在屏幕上居中顯示。3)publicstaticString

showInputDialog(Component

parentComponent,Object

message)throwsHeadlessException功能:顯示請(qǐng)求用戶輸入內(nèi)容的問(wèn)題消息對(duì)話框,它以parentComponent

為父級(jí)。該對(duì)話框顯示于Component的窗體的上部,通常位于Component之下。4)publicstaticString

showInputDialog(Component

parentComponent,Object

message,Object

initialSelectionValue)功能:顯示請(qǐng)求用戶輸入內(nèi)容的問(wèn)題消息對(duì)話框,它以parentComponent

為父級(jí)。輸入值將被初始化為initialSelectionValue。該對(duì)話框顯示于Component的窗體的上部,通常位于Component之下。5)publicstaticString

showInputDialog(Component

parentComponent,

Object

message,String

title,int

messageType)throwsHeadlessException功能:顯示請(qǐng)求用戶輸入內(nèi)容的對(duì)話框,它以parentComponent

為父級(jí),該對(duì)話框的標(biāo)題為title,消息類(lèi)型為messageType。參數(shù):parentComponent-對(duì)話框的父Componentmessage-要顯示的Objecttitle-要在對(duì)話框的標(biāo)題欄中顯示的StringmessageType-要顯示的消息類(lèi)型:ERROR_MESSAGEINFORMATION_MESSAGEWARNING_MESSAGEQUESTION_MESSAGE

PLAIN_MESSAGE2.showMessageDialog方法消息對(duì)話框,用來(lái)顯示消息publicstaticvoidshowMessageDialog(Component

parentComponent,Object

message,String

title,int

messageType)throwsHeadlessException功能:調(diào)出對(duì)話框,它顯示使用由messageType

參數(shù)確定的默認(rèn)圖標(biāo)的message。參數(shù):parentComponent-確定在其中顯示對(duì)話框的Frame;如果為null或者parentComponent

不具有Frame,則使用默認(rèn)的Framemessage-要顯示的Objecttitle-對(duì)話框的標(biāo)題字符串messageType-要顯示的消息類(lèi)型:ERROR_MESSAGE、INFORMATION_MESSAGE、WARNING_MESSAGE、QUESTION_MESSAGE或PLAIN_MESSAGE3.showConfirmDialog方法確認(rèn)對(duì)話框,詢(xún)問(wèn)問(wèn)題,帶有Yes、No和Cancel按鈕1)publicstaticint

showConfirmDialog(Component

parentComponent,Object

message)throwsHeadlessException功能:調(diào)出帶有選項(xiàng)Yes、No

和Cancel

的對(duì)話框;標(biāo)題為SelectanOption。參數(shù):parentComponent-確定在其中顯示對(duì)話框的Frame;如果為null或者parentComponent

不具有Frame,則使用默認(rèn)的Framemessage-要顯示的Object返回:指示用戶所選選項(xiàng)的整數(shù)YES_OPTION=0NO_OPTION=1CANCEL_OPTION=22)publicstaticint

showConfirmDialog(Component

parentComponent,Object

message,String

title,int

optionType)throwsHeadlessException功能:調(diào)出一個(gè)由optionType

參數(shù)確定其中選項(xiàng)數(shù)的對(duì)話框。參數(shù):parentComponent-確定在其中顯示對(duì)話框的Fram

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論