我在5月23日写过一篇文章为《Java弹窗操作》,从目前来看浏览量不错,故我将之前省略了的两个程序分享出来,同时也将更多的方法分享出来,供大家交流学习。
注:该部分任务我是5月完成的,可从LICEcap截图中看到。
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//使用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截取的动态图如下:
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截取的动态图如下:
通过这两个小程序我将之前博客中未写的东西也分享了出来,从中可以看出使用JOptionPane类的消息提示框可以使信息提示的比控制台更加直接,所以我们可以将这个类的使用方法记到草稿本中,特别是使用这个方法进行报错会有很好的效果,也希望大家能将自己发现的好方法在评论区分享出来,一起交流学习。