zoukankan      html  css  js  c++  java
  • 课后作业1:字串加密

    1.设计思想:首先判断是要加密还是解密,然后再进行字符串的通过ASCLL码表值的加减来完成加密或者解密。

    2.程序流程图:

    3.源代码:

     1 package Luomamima;
     2 import java.util.Scanner;
     3 public class Test 
     4 {
     5     private static Scanner scan;
     6     public static void main(String[] args)
     7     {
     8         Scanner scanner=new Scanner(System.in);
     9         int length;  //用户输入的字符串长度  
    10         String s;
    11         scan = new Scanner(System.in); 
    12         System.out.println("请选择你要进行的操作:");
    13         System.out.println("1.加密字符串");
    14         System.out.println("2.解密字符串");
    15         int a=scanner.nextInt();
    16         System.out.println("请输入要加密或解密的字符串:");
    17         s  = scan.nextLine();  //读取用户输入的字符串并赋值给s
    18         System.out.println("你输入的字符串为:"+s );
    19         length = s .length();  //得到用户输入字符串的长度
    20         char array[] = s .toCharArray();  //将用户输入的字符串转化为字符数组
    21         if(a==1)//加密
    22         {    for(int i=0;i<length;i++)  //将每个字符进行变换
    23             {    
    24                 if((array[i]>=65&&array[i]<=87))
    25                     array[i]=(char) (array[i]+3);
    26                 else if((array[i]>=88&&array[i]<=90))
    27                     array[i]=(char) (array[i]-23);
    28             }
    29             StringBuffer arr = new StringBuffer();  //定义一个stringbuffer类的变量arr
    30             for(int i=0;i<length;i++)
    31             {
    32                 arr.append(array[i]);  //运用append方法,参考StringBufferAppend。java
    33             }
    34             String newstr = arr.toString();  //将变换后的重新组合为字符串
    35             System.out.println("加密后字符串为:"+newstr);  //打印组合后的字符串
    36         }
    37         if(a==2)//解密
    38         {
    39             for(int i=0;i<length;i++)  //将每个字符进行变换
    40             {    
    41                 if((array[i]>=68&&array[i]<=90))
    42                     array[i]=(char) (array[i]-3);
    43                 else if((array[i]>=65&&array[i]<=67))
    44                     array[i]=(char) (array[i]+23);
    45             }
    46             StringBuffer arr = new StringBuffer();  //定义一个stringbuffer类的变量arr
    47             for(int i=0;i<length;i++)
    48             {
    49                 arr.append(array[i]);  //运用append方法
    50             }
    51             String newstr = arr.toString();  //将变换后的重新组合为字符串
    52             System.out.println("解密后的字符串为:"+newstr);  //打印组合后的字符串
    53         }
    54                 
    55     }
    56 }

    4.结果截图:

    加密:

    解密:

  • 相关阅读:
    舒迅:微信商业模式的挑战点
    标签Tag列表的实现
    UITableView下拉更新/上提加载的实现
    一张背景图实现的漂亮黄色CSS菜单
    纯CSS打造漂亮的圆角边界导航
    CSS打造立体按钮式的竖向导航菜单代码
    纯CSS实现蓝色圆角下拉菜单
    用于用户中心或后台左侧的JS折叠菜单
    滑动鼠标放大带阴影的纯CSS菜单
    JavaScript打造超酷很动感的鼠标特效菜单
  • 原文地址:https://www.cnblogs.com/liurx/p/7743909.html
Copyright © 2011-2022 走看看