请编写一个程序,使用上述算法加密或解密用户输入的英文字串要求设计思想、程序流程图、源代码、结果截图。

1,设计思想:

先输入索要加密的字符串由于此程序比较基础所以只考虑大写字母,然后用toCharArray()函数将字符串赋给一个char型数组,然后依次查询数组里元素如果是X,Y,Z中的其中一个让其-23变成A,B,C的ASCII值然后强转成char型重新赋给对应的数组位置,其他的则直接+3再转,然后输出。

2,流程图:

,

3,源代码:

import javax.swing.JOptionPane;
public class JiaMi
{
public static void main(String[] args)
{
String s=JOptionPane.showInputDialog("请输入字符串:");
char charArray[]=s.toCharArray();//将字符串转化成字符数组。
for ( int i = 0; i < charArray.length; i++ )
{
//特殊情况,当字符为XYZ时转化成ABC
if(charArray[i]=='X'||charArray[i]=='Y'||charArray[i]=='Z')
{
charArray[i]=(char)(charArray[i]-23);
}
//一般情况,将字符对应成ASCII码+3后再转化成字符。
else
{
charArray[i]=(char)(charArray[i]+3);
}
}
//将加密后的字符输出。
JOptionPane.showMessageDialog(null, "加密后的字符串:"+String.valueOf(charArray));
}
}

4,结果截图:

java小程序(课堂作业04)的更多相关文章

  1. 输出多行字符的一个简单JAVA小程序

    public class JAVA { public static void main(String[] args) { System.out.println("-------------- ...

  2. 浏览器兼容java小程序配置说明

    最近在使用的一个web应用系统是内嵌了java小程序,遇到了各种浏览器兼容性问题,现梳理如下: 1.通过以下链接检测当前电脑是否已经安装有java https://java.com/zh_CN/dow ...

  3. 框架一般用作Java应用程序的窗口,而Applet是Java小程序的窗口

    框架一般用作Java应用程序的窗口,而Applet是Java小程序的窗口. 与Frame不同,Applet是在网页中显示的,也可以通过添加Panel进行组件布局. package TomAwt; im ...

  4. 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用

    有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...

  5. 2015.11.27初识java一集简单的java小程序

    JAVA配置环境变量方法: 1.打开我的电脑--属性--高级--环境变量 2.新建系统变量JAVA_HOME 和CLASSPATH 变量名:JAVA_HOME变量值:D:\Java\jdk1.7.0_ ...

  6. java的数据类型,几个java小程序

    1:求圆的面积 还好看了c++,不然直接看这课件还真是看不懂……加油吧 要从键盘读入数据可以用Scanner类的nextlnt()或者nextDouble()方法,首先创建Scanner类的一个实例, ...

  7. java 小程序开发PKCS7Padding 解密方法实现,以及错误Cannot find any provider supporting AES/CBC/PKCS7Padding 解决办法

    近日在对接小程序API,其中wx.getUserInfo api返回的数据encryptedData 的解密算法要求为: AES-128-CBC,数据采用PKCS#7填充. 经过一番查询,得到java ...

  8. 首次编译Java小程序

    public class helloworld { public static void main(string[] args) { system.out.println("hello wo ...

  9. java 小程序查看器 启动:未初始化小程序 解决方法

    欢迎大家转载.为保留作者成果,转载请注明出处,http://blog.csdn.net/netluoriver,有些文件在资源中也能够下载.假设你没有积分.能够联系我索要! 在执行java程序的时候突 ...

  10. JAVA 小程序之ATM

    一个JAVA的小程序,主要要求有模块化编程的思想,能够把ATM中各个功能独立成为一个一个的方法. ATM主要功能有: 查询余额: 取款: 存款: 修改密码: 退出. 以上功能均由独立的方法给出,具体实 ...

随机推荐

  1. swiper 组件的高度设置问题

    1.swiper组件直接运用时, .content>swiper{height:100%} 是不起作用的. 正确的做法是: swiper{ height: 100vh; } // 或者 < ...

  2. 线程安全的"懒汉"单例模式

    所谓线程不安全实际上就是一段代码在同一时间被两个线程同时执行,导致运行结果与单个线程运行结果不相同 新建一个单例模式类和一个多线程测试类 public class TestSingleTon impl ...

  3. eact native生成APP报错:You have not accepted the license agreements of the following SDK components:

    一.报错信息 * What went wrong: A problem occurred configuring project ':app'. > You have not accepted ...

  4. Python网络爬虫第二弹《http和https协议》

    一.HTTP协议 1.官方概念: HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文 ...

  5. day02编程语言介绍及python介绍

    编程语言介绍 机器语言:以二进制数为代码的编程语言,直接控制硬件运行 优点:执行效率非常快 缺点:以二进制数为编码编程,编程效率非常低下,掌握它需要深厚的硬件原理功底 汇编语言:将二进制编码用英文字符 ...

  6. xdoj 1241--余神的rp机(区间dp)

    xdoj  1241---余神的rp机 核

  7. unet网络讲解,附代码

    转: http://www.cnblogs.com/gujianhan/p/6030639.html key1: FCN对图像进行像素级的分类,从而解决了语义级别的图像分割(semantic segm ...

  8. day 017面向对象-反射

    主要内容: isinstance, type, issubclass( 内置函数) 区分函数和方法 反射 一    ( isinstance, type, issubclass) isinstance ...

  9. Codeforces 1005D:Polycarp and Div 3

    题目链接:http://codeforces.com/problemset/problem/1005/D 题意 给出个字符串(全是数字),把这个字符串换分成一些子串,最多能划分多少个能够被3整除的子串 ...

  10. django CBV和FBV写法总结

    一.FBV function base views 平常我们的写法,一个URL对应一个视图函数 二.CBV 1.url 配置 path('test/',views.CBVTest.as_views() ...