zoukankan      html  css  js  c++  java
  • 课上加密作业

    程序设计思想:

             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);
        }
    
    }
  • 相关阅读:
    五种提高 SQL 性能的方法
    join 使用详解方式
    关于MagicAjax的用法
    收藏几段SQL Server语句和存储过程
    ubuntu nfs配置 以及mount.nfs:access denied by server while mounting问题解决
    Hisi开发板上 SQLite3.3.8移植
    父进程非阻塞回收子进程(适用LINUX下C语言的clientserver模型)
    busybox asm/page.h: No such find.
    ubuntu11.10 samba服务器配置
    errno定义
  • 原文地址:https://www.cnblogs.com/dotacai/p/4901763.html
Copyright © 2011-2022 走看看