Java實(shí)現(xiàn)彈窗效果的基本操作(2)
本文為大家分享了Java實(shí)現(xiàn)彈窗效果的實(shí)現(xiàn)代碼,供大家參考,具體內(nèi)容如下
1、任務(wù)簡(jiǎn)介
我在5月23日寫(xiě)過(guò)一篇文章為《Java彈窗操作》,從目前來(lái)看瀏覽量不錯(cuò),故我將之前省略了的兩個(gè)程序分享出來(lái),同時(shí)也將更多的方法分享出來(lái),供大家交流學(xué)習(xí)。
注:該部分任務(wù)我是5月完成的,可從LICEcap截圖中看到。
2、程序代碼
(1)任務(wù)1
1)任務(wù)內(nèi)容
編程實(shí)現(xiàn)一個(gè)命令窗程序,使得:
輸入“A”則在屏上回顯A字符的ASCII碼。
輸入“4”則在屏上回顯4字符的ASCII碼。
輸入“我”則在屏上回顯“我”字的漢字內(nèi)碼。
等等。
2)任務(wù)代碼
本程序需要使用語(yǔ)句char[] a=str.toCharArray();將字符轉(zhuǎn)換為字符數(shù)組,同時(shí)還需要使用語(yǔ)句int b=Integer.valueOf(a[i]);將數(shù)組中的元素轉(zhuǎn)為其對(duì)應(yīng)的ASCII碼,具體代碼如下:
import java.util.Scanner;//導(dǎo)入java.util包下的Scanner類(lèi)
import javax.swing.JOptionPane;//導(dǎo)入java.swing包下的JOptionPane類(lèi)
public class Test3{//類(lèi)名
public static void main(String[] args){//程序主函數(shù)
while(true){//定義死循環(huán)
System.out.print("Please input:");//提示輸入
Scanner s=new Scanner(System.in);//創(chuàng)建scanner,控制臺(tái)會(huì)一直等待輸入,直到敲回車(chē)結(jié)束
String str=s.nextLine();//將用戶(hù)的輸入轉(zhuǎn)換為字符串形式
char[] a=str.toCharArray();//將字符串對(duì)象中的字符轉(zhuǎn)換為一個(gè)字符數(shù)組
if("ByeBye".equals(str)){//if語(yǔ)句的條件判斷用戶(hù)輸入是否為ByeBye
System.out.print("The process is over");//輸出進(jìn)程已結(jié)束
System.exit(0);//關(guān)閉進(jìn)程
}else{
for(int i=0;i<a.length;i++){//使用for循環(huán)遍歷數(shù)組
int b=Integer.valueOf(a[i]);//將數(shù)組中的元素轉(zhuǎn)換為其對(duì)應(yīng)的ASCII碼
//使用消息提示框輸出信息,該信息包含輸入的字符及其ASCII碼
JOptionPane.showMessageDialog(null, "You input is"+str+"\n"+"ASCII is"+b, str, JOptionPane.PLAIN_MESSAGE);
}
}
}
}
}
3)運(yùn)行結(jié)果
通過(guò)LICEcap截取的動(dòng)態(tài)圖如下:

(2)任務(wù)2
1)任務(wù)內(nèi)容
編程實(shí)現(xiàn)一個(gè)命令窗程序,使得:
輸入“你”則在屏上回顯“you”。
輸入“書(shū)”則在屏上回顯“book”。
輸入“中”則在屏上回顯“middle”。
輸入“中國(guó)”則在屏上回顯“China”。
…要能輸入至少100個(gè)詞。如輸入沒(méi)有記錄的詞則如下:
輸入“東東”則在屏上回顯“查不到該詞”。
輸入ByeBye則退出程序.
(提示: 單詞字典應(yīng)做一個(gè)文本文件讀入,其中每行為:<中文字詞><對(duì)應(yīng)英文> )
如:字典文件 dic.txt內(nèi)容是
<我>
<你>
<中國(guó)>
……
2)任務(wù)代碼
首先需要將制作好的txt文件存入指定路徑中,我使用的路徑為D:\Test\dic.txt,該步驟具體操作自己執(zhí)行;
其次對(duì)于讀取指定文件的方法我在工程訓(xùn)練任務(wù)2.1中已經(jīng)接觸過(guò)了,要讀取文本文檔中的文字信息,需要用到BufferedReader類(lèi),BufferedReader從字符輸入流中讀取文本,緩沖各個(gè)字符,從而實(shí)現(xiàn)字符、數(shù)組和行的高效讀取,通過(guò)語(yǔ)句 BufferedReader br= new BufferedReader(new FileReader(“文件所在路徑”));可以將緩沖指定文件輸入;
在讀取指定文件中的每一行后,還需要使用substring方法為china和english賦值,最后通過(guò)消息提示框的方式進(jìn)行輸出,具體代碼如下:
import java.io.*;//導(dǎo)入java.io包下的所有類(lèi)
import java.util.Scanner;//導(dǎo)入java.util包下的Scanner類(lèi)
import javax.swing.JOptionPane;//導(dǎo)入java.swing包下的JOptionPane類(lèi)
public class Test4{//類(lèi)名
public static void main(String[] args) throws IOException{//程序主函數(shù)
while(true){//定義死循環(huán)
System.out.print("Please input:");//提示輸入
Scanner s=new Scanner(System.in);//創(chuàng)建scanner,控制臺(tái)會(huì)一直等待輸入,直到敲回車(chē)結(jié)束
String str=s.nextLine();//將用戶(hù)的輸入轉(zhuǎn)換為字符串形式
//讀取指定的文件
BufferedReader br=new BufferedReader(new FileReader("D:\\Test\\dic.txt"));
String a=null;//定義一個(gè)空字符串
boolean b=false;//定義一個(gè)布爾型變量
while((a=br.readLine())!=null){//readLine()方法, 用于讀取一行,只要讀取內(nèi)容不為空就一直執(zhí)行
//使用substring方法為china和english賦值
String china=a.substring(a.indexOf("<")+1, a.indexOf(">"));
String english=a.substring(a.lastIndexOf("<")+1,a.lastIndexOf(">"));
if(str.equals(china)){//if語(yǔ)句判斷該中文是否存在
//使用消息提示框輸出信息,該信息包含輸入的中文字符及其英文翻譯
JOptionPane.showMessageDialog(null, "You input is "+str+"\n"+"English is "+english, str, JOptionPane.PLAIN_MESSAGE);
b=true;
}
}
if(str.equals("ByeBye")){//if語(yǔ)句的條件判斷用戶(hù)輸入是否為ByeBye
System.out.print("The process is over");//輸出進(jìn)程已結(jié)束
System.exit(0);//關(guān)閉進(jìn)程
}
if(!b){//if語(yǔ)句判斷該中文存在情況
System.out.println("查不到該詞");//輸出
}
}
}
}
3)運(yùn)行結(jié)果
通過(guò)LICEcap截取的動(dòng)態(tài)圖如下:

3、總結(jié)
通過(guò)這兩個(gè)小程序我將之前博客中未寫(xiě)的東西也分享了出來(lái),從中可以看出使用JOptionPane類(lèi)的消息提示框可以使信息提示的比控制臺(tái)更加直接,所以我們可以將這個(gè)類(lèi)的使用方法記到草稿本中,特別是使用這個(gè)方法進(jìn)行報(bào)錯(cuò)會(huì)有很好的效果,也希望大家能將自己發(fā)現(xiàn)的好方法在評(píng)論區(qū)分享出來(lái),一起交流學(xué)習(xí)。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
SpringBoot多數(shù)據(jù)源切換實(shí)現(xiàn)代碼(Mybaitis)
實(shí)際工作中我們會(huì)遇到springboot項(xiàng)目初始化啟動(dòng)時(shí)候,不能指定具體連接哪個(gè)數(shù)據(jù)源的時(shí)候,不同的接口連接不同的數(shù)據(jù)源或者前端頁(yè)面指定連接某個(gè)數(shù)據(jù)源等等情況,就會(huì)遇到動(dòng)態(tài)數(shù)據(jù)源切換的問(wèn)題,需要的朋友可以參考下2022-04-04
java客戶(hù)端Jedis操作Redis Sentinel 連接池的實(shí)現(xiàn)方法
下面小編就為大家?guī)?lái)一篇java客戶(hù)端Jedis操作Redis Sentinel 連接池的實(shí)現(xiàn)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-03-03
Redis中String字符串和sdshdr結(jié)構(gòu)體超詳細(xì)講解
這篇文章主要介紹了Redis中String字符串和sdshdr結(jié)構(gòu)體,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧2023-04-04
SpringBoot下使用自定義監(jiān)聽(tīng)事件的流程分析
事件機(jī)制是Spring的一個(gè)功能,目前我們使用了SpringBoot框架,所以記錄下事件機(jī)制在SpringBoot框架下的使用,同時(shí)實(shí)現(xiàn)異步處理,這篇文章主要介紹了SpringBoot下使用自定義監(jiān)聽(tīng)事件,需要的朋友可以參考下2023-08-08
Spring?Boot?配置?Hikari?數(shù)據(jù)庫(kù)連接池的操作代碼
數(shù)據(jù)庫(kù)連接池是一個(gè)提高程序與數(shù)據(jù)庫(kù)的連接的優(yōu)化,連接池它主要作用是提高性能、節(jié)省資源、控制連接數(shù)、連接管理等操作,這篇文章主要介紹了SpringBoot配置Hikari數(shù)據(jù)庫(kù)連接池,需要的朋友可以參考下2023-09-09
SpringBoot ApplicationListener事件監(jiān)聽(tīng)接口使用問(wèn)題探究
這篇文章主要介紹了SpringBoot ApplicationListener事件監(jiān)聽(tīng)接口使用問(wèn)題,自定義監(jiān)聽(tīng)器需要實(shí)現(xiàn)ApplicationListener接口,實(shí)現(xiàn)對(duì)應(yīng)的方法來(lái)完成自己的業(yè)務(wù)邏輯。SpringBoot Application共支持6種事件監(jiān)聽(tīng)2023-04-04
Java?DelayQueue實(shí)現(xiàn)延時(shí)任務(wù)的示例詳解
DelayQueue是一個(gè)無(wú)界的BlockingQueue的實(shí)現(xiàn)類(lèi),用于放置實(shí)現(xiàn)了Delayed接口的對(duì)象,其中的對(duì)象只能在其到期時(shí)才能從隊(duì)列中取走。本文就來(lái)利用DelayQueue實(shí)現(xiàn)延時(shí)任務(wù),感興趣的可以了解一下2022-08-08
Java實(shí)現(xiàn)通過(guò)時(shí)間獲取8位驗(yàn)證碼
這篇文章主要為大家詳細(xì)介紹了Java如何通過(guò)時(shí)間獲取8位驗(yàn)證碼(每?jī)蓚€(gè)小時(shí)生成一個(gè)),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-11-11

