Java实现弹窗效果的基本操作(2)

本文为大家分享了Java实现弹窗效果的实现代码,供大家参考,具体内容如下

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码,具体代码如下:

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

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赋值,最后通过消息提示框的方式进行输出,具体代码如下:

import java.io.*;//导入java.io包下的所有类
import java.util.Scanner;//导入java.util包下的Scanner类
import javax.swing.JOptionPane;//导入java.swing包下的JOptionPane类
public class Test4{//类名
 public static void main(String[] args) throws IOException{//程序主函数
  while(true){//定义死循环
   System.out.print("Please input:");//提示输入
   Scanner s=new Scanner(System.in);//创建scanner,控制台会一直等待输入,直到敲回车结束
   String str=s.nextLine();//将用户的输入转换为字符串形式
   //读取指定的文件
   BufferedReader br=new BufferedReader(new FileReader("D:\\Test\\dic.txt"));
   String a=null;//定义一个空字符串
   boolean b=false;//定义一个布尔型变量
   while((a=br.readLine())!=null){//readLine()方法, 用于读取一行,只要读取内容不为空就一直执行
    //使用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语句判断该中文是否存在
     //使用消息提示框输出信息,该信息包含输入的中文字符及其英文翻译
     JOptionPane.showMessageDialog(null, "You input is "+str+"\n"+"English is "+english, str, JOptionPane.PLAIN_MESSAGE);
     b=true;
    }
   }
   if(str.equals("ByeBye")){//if语句的条件判断用户输入是否为ByeBye
    System.out.print("The process is over");//输出进程已结束
    System.exit(0);//关闭进程
   }
   if(!b){//if语句判断该中文存在情况
    System.out.println("查不到该词");//输出
   }
  }
 }
}

3)运行结果

通过LICEcap截取的动态图如下:

3、总结

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。