Java弹窗操作2

「爱情、让人受尽委屈。」 2022-05-14 10:56 273阅读 0赞

Java弹窗操作2

1、任务简介

我在5月23日写过一篇文章为《Java弹窗操作》,从目前来看浏览量不错,故我将之前省略了的两个程序分享出来,同时也将更多的方法分享出来,供大家交流学习。
注:该部分任务我是5月完成的,可从LICEcap截图中看到。


2、程序代码

(1)任务1

1)任务内容
编程实现一个命令窗程序,使得:
输入“A”则在屏上回显A字符的ASCII码。
输入“4”则在屏上回显4字符的ASCII码。
输入“我”则在屏上回显“我”字的汉字内码。
等等。

2)任务代码
本程序需要使用语句char[] a=str.toCharArray();将字符转换为字符数组,同时还需要使用语句int b=Integer.valueOf(a[i]);将数组中的元素转为其对应的ASCII码,具体代码如下:

  1. import java.util.Scanner;//导入java.util包下的Scanner类
  2. import javax.swing.JOptionPane;//导入java.swing包下的JOptionPane类
  3. public class Test3{
  4. //类名
  5. public static void main(String[] args){
  6. //程序主函数
  7. while(true){
  8. //定义死循环
  9. System.out.print("Please input:");//提示输入
  10. Scanner s=new Scanner(System.in);//创建scanner,控制台会一直等待输入,直到敲回车结束
  11. String str=s.nextLine();//将用户的输入转换为字符串形式
  12. char[] a=str.toCharArray();//将字符串对象中的字符转换为一个字符数组
  13. if("ByeBye".equals(str)){
  14. //if语句的条件判断用户输入是否为ByeBye
  15. System.out.print("The process is over");//输出进程已结束
  16. System.exit(0);//关闭进程
  17. }else{
  18. for(int i=0;i<a.length;i++){
  19. //使用for循环遍历数组
  20. int b=Integer.valueOf(a[i]);//将数组中的元素转换为其对应的ASCII码
  21. //使用消息提示框输出信息,该信息包含输入的字符及其ASCII码
  22. JOptionPane.showMessageDialog(null, "You input is"+str+"\n"+"ASCII is"+b, str, JOptionPane.PLAIN_MESSAGE);
  23. }
  24. }
  25. }
  26. }
  27. }

3)运行结果
通过LICEcap截取的动态图如下:
这里写图片描述

(2)任务2

1)任务内容
编程实现一个命令窗程序,使得:
输入“你”则在屏上回显“you”。
输入“书”则在屏上回显“book”。
输入“中”则在屏上回显“middle”。
输入“中国”则在屏上回显“China”。
…要能输入至少100个词。如输入没有记录的词则如下:
输入“东东”则在屏上回显“查不到该词”。
输入ByeBye则退出程序.
(提示: 单词字典应做一个文本文件读入,其中每行为:<中文字词><对应英文> )
如:字典文件 dic.txt内容是
<我>
<你>
<中国>
……

2)任务代码
首先需要将制作好的txt文件存入指定路径中,我使用的路径为D:\Test\dic.txt,该步骤具体操作自己执行;

其次对于读取指定文件的方法我在工程训练任务2.1中已经接触过了,要读取文本文档中的文字信息,需要用到BufferedReader类,BufferedReader从字符输入流中读取文本,缓冲各个字符,从而实现字符、数组和行的高效读取,通过语句 BufferedReader br= new BufferedReader(new FileReader(“文件所在路径”));可以将缓冲指定文件输入;

在读取指定文件中的每一行后,还需要使用substring方法为china和english赋值,最后通过消息提示框的方式进行输出,具体代码如下啊:

  1. import java.io.*;//导入java.io包下的所有类
  2. import java.util.Scanner;//导入java.util包下的Scanner类
  3. import javax.swing.JOptionPane;//导入java.swing包下的JOptionPane类
  4. public class Test4{
  5. //类名
  6. public static void main(String[] args) throws IOException{
  7. //程序主函数
  8. while(true){
  9. //定义死循环
  10. System.out.print("Please input:");//提示输入
  11. Scanner s=new Scanner(System.in);//创建scanner,控制台会一直等待输入,直到敲回车结束
  12. String str=s.nextLine();//将用户的输入转换为字符串形式
  13. //读取指定的文件
  14. BufferedReader br=new BufferedReader(new FileReader("D:\\Test\\dic.txt"));
  15. String a=null;//定义一个空字符串
  16. boolean b=false;//定义一个布尔型变量
  17. while((a=br.readLine())!=null){
  18. //readLine()方法, 用于读取一行,只要读取内容不为空就一直执行
  19. //使用substring方法为china和english赋值
  20. String china=a.substring(a.indexOf("<")+1, a.indexOf(">"));
  21. String english=a.substring(a.lastIndexOf("<")+1,a.lastIndexOf(">"));
  22. if(str.equals(china)){
  23. //if语句判断该中文是否存在
  24. //使用消息提示框输出信息,该信息包含输入的中文字符及其英文翻译
  25. JOptionPane.showMessageDialog(null, "You input is "+str+"\n"+"English is "+english, str, JOptionPane.PLAIN_MESSAGE);
  26. b=true;
  27. }
  28. }
  29. if(str.equals("ByeBye")){
  30. //if语句的条件判断用户输入是否为ByeBye
  31. System.out.print("The process is over");//输出进程已结束
  32. System.exit(0);//关闭进程
  33. }
  34. if(!b){
  35. //if语句判断该中文存在情况
  36. System.out.println("查不到该词");//输出
  37. }
  38. }
  39. }
  40. }

3)运行结果
通过LICEcap截取的动态图如下:
这里写图片描述

3、总结

通过这两个小程序我将之前博客中未写的东西也分享了出来,从中可以看出使用JOptionPane类的消息提示框可以使信息提示的比控制台更加直接,所以我们可以将这个类的使用方法记到草稿本中,特别是使用这个方法进行报错会有很好的效果,也希望大家能将自己发现的好方法在评论区分享出来,一起交流学习。

发表评论

表情:
评论列表 (有 0 条评论,273人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Java操作

    Java弹窗操作 1、任务简介 本博客介绍两种Java弹窗操作的方法,第一个种是通过弹出对话框显示用户输入的信息,第二种是通过用户输入数字的不同打开不同的程序。