课上加密作业

程序设计思想:

         1.首先定义三个String字符串是s1,s2,s3,利用对话框(只能输入String类)输入字符串s1。

    2.利用s1.length()计算s1的长度。

    3.创建一个s1.length()的char数组。

    4.利用循环将s1中每一个字符转换成char字符储存在数组中,同时每个char加key会自动转换成int类型,再利用强制类型转换成char。

    5.调用s2的构造方法将字符数组赋值给s2。

    6.利用对话框输出加密后的字符串。

    7.重复上述方法将s2转换为未加密前的字符串存储在s3中。

 

 

    第三步出现错误没有找到一个函数可以把String类型中的每一个字符串转换为整数,只有s1.charAt()将每一个转化为char类型的字符。

  所以经过改正以后先利用char类型的数组储存在储存的同时加key,因为key为整数,所以加上key之后就变为整数了(字母相应的变为ACII码)再利用强制类型转换,将整数转换为char字符。

import javax.swing.*;
public class Project {
    
    public static void main(String args[])
    {
        String s1,
               s2,
               s3;
        s1=JOptionPane.showInputDialog("请输入要加密的字符串:");
        char c[];
        c=new char[s1.length()];
        int a;
        for(int i=0;i<s1.length();i++)
        {
            c[i]=s1.charAt(i);
            a=c[i]+3;
            c[i]=(char)a;
        }
        s2=new String(c);
        JOptionPane.showMessageDialog(null,"加密后的字符串是:"+ s2,"result",JOptionPane.PLAIN_MESSAGE);
        
        for(int i=0;i<s1.length();i++)
        {
            c[i]=s2.charAt(i);
            a=c[i]-3;
            c[i]=(char)a;
        }
        s3=new String(c);
        JOptionPane.showMessageDialog(null, "解密后的字符串是:"+s3,"results",JOptionPane.PLAIN_MESSAGE);
    }

}

 

posted on 2015-10-22 17:46  菜鸟逛街  阅读(165)  评论(0编辑  收藏  举报