字符串加密与解密的问题

程序思想:输入一个字符串,把字符串里的每一个字符用charAt()的方法放入一个数组里,在数组里定义一个char类型的变量,把数组里的每一个值都赋给这个变量,加密就加上3,这样就能把ACS码值加3,自然就得到了答案,但是要为最后三个字母写三个if,让遇到xyz的时候退回abc。解密的过程类似。

 

源代码://20142984 chengchongjing

import java.io.InputStream;

//凯撒密码

import java.util.Scanner;

public class Secrect {

 

    public static void main(String[] args) {

        // TODO 自动生成的方法存

       Scanner in= new Scanner (System.in);

       System.out.println("请输入要进行的操作 1加密 2解密");

       int n=in.nextInt();

       if(n==1){

       System.out.println("请输入要加密的字符串");

       String str=in.next();

       String jm="";

       int key=3;

       for(int i=0;i<str.length();i++)

       {

       char c=str.charAt(i);

       if(c>='a'&&c<='w'){

         c+=key;

         }

         else if(c=='x') {

             c='a';

          }

         else if(c=='y')

         {

             c='b';

         }

         else if(c=='z')

         {

             c='c';

         }

            jm+=c;

       }

       System.out.println("要加密的字符串是:"+jm);

      }

      

       if(n==2){

           System.out.println("请输入要解密的字符串");

           String str2=in.next();

           String jm2="";

           int key=3;

           for(int i=0;i<=str2.length();i++){

               char c2=str2.charAt(i);

               if(c2>'d'&&c2<'z')

               {

                 c2-=key;

               }

               else if(c2=='a'){

                c2='x';  

               }

               else if(c2=='b'){

                   c2='y';

               }

               else if(c2=='c')

               {

                   c2='z';

               }

               jm2+=c2;

           }

           System.out.println("要解密的字符串是"+jm2);

        }  

   

    }

}

转载于:https://www.cnblogs.com/3066405538a/p/4909818.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值