字串加密

Posted pangkaxxxl

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字串加密相关的知识,希望对你有一定的参考价值。

凯撒密码

设计思想:加密过程是对小写字母的ASCLL码进行+3的操作,解密则与之相反。(xyz的加密则为abc,abc的解密则为xyz)

流程图:

源代码

import java.util.Scanner;
 
public class Password {
public char Change(char a)
{
    char c=0;
    if(a==\'X\')
        c=\'A\';
    if(a==\'Y\')
        c=\'B\';
    if(a==\'Z\')
        c=\'Z\';
    if(a>=\'A\'&&a<=\'W\')
        c=(char) (a+3);
    return c;
         
}
 
public char jiemi(char a)
{
    char c=0;
    if(a==\'A\')
        c=\'X\';
    if(a==\'B\')
        c=\'Y\';
    if(a==\'C\')
        c=\'Z\';
    if(a>=\'D\'&&a<=\'Z\')
        c=(char) (a-3);
    return c;
         
}
 
    public static void main(String[] args)
    {
                String s1;
                String s2="";
                char c;
                int w;
                Scanner input=new Scanner(System.in);
                Password p=new Password();
                System.out.println("请选择1.加密2.解密");
                w=input.nextInt();
        if(w==1)
        {
                    System.out.println("请输入一条消息:");
                    s1=input.next();
                    char a[]=s1.toCharArray();
                for(int i=0;i<a.length;i++)
                {
                    if(a[i]<\'A\'&&a[i]>\'Z\')
                    {
                        System.out.println("输入有误");
                        System.exit(0);
                    }
                    c=p.Change(a[i]);
                    s2=s2+c;
                     
                }
        System.out.println("加密后的消息为:");
               System.out.println(s2);
        }
        else
        {
            System.out.println("请输入要解密的句子");
            s1=input.next();
            char a[]=s1.toCharArray();
            for(int i=0;i<a.length;i++)
            {
 
                if(a[i]<\'A\'&&a[i]>\'Z\')
                {
                    System.out.println("输入有误");
                    System.exit(0);
                }
                c=p.jiemi(a[i]);
                s2=s2+c;
            }
            System.out.println("解密后的消息为:");
               System.out.println(s2);
        }
    }
 
}

  

以上是关于字串加密的主要内容,如果未能解决你的问题,请参考以下文章

字串加密

java字串加密及String的各类函数说明

字串加密

字串加密

课后作业之字串加密动手动脑

课后作业之字串加密