• 课后作业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.结果截图:

    加密:

    解密:

  • 相关阅读:
    Hibernate中使用@Lob 注解保存String[] 问题
    具体解释Java虚拟机类载入
    POJ 2631 Roads in the North(树的直径)
    MySQL远程訪问的两个问题
    org.hibernate.LazyInitializationException could not initialize proxy-no Session的解决
    博客搬家啦!
    hdu 5015 233 Matrix (矩阵高速幂)
    Flink内存管理源代码解读之基础数据结构
    UML图与机房收费系统实例
    TextView设置成仅仅读
  • 原文地址:https://www.cnblogs.com/liurx/p/7743909.html
Copyright © 2020-2023  润新知