(一)古罗马皇帝凯撒在打仗时曾经使用过以下方法加密军事情报:请编写一个程序,使用上述算法加密或解密用户输入的英文字串。

1.设计思想:首先选择是加密字符串还是解密字符串,两种算法相似。如果要加密字符串,则需要考虑特殊字符,就是XYZ这三个字符;相应的解密字符串类似,也需要考虑ABC这三个字符。

2.程序流程图

3.源代码

import java.util.Scanner;

public class work1 {

    public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner scanner=new Scanner(System.in);
int num=0;
System.out.println("(1加密字符串,2解密字符串)");
System.out.print("请选择:");
num=scanner.nextInt(); if(num==1)
{
System.out.print("请输入需要加密的字符串:");
String str=scanner.next();
scanner.close();//这是啥意思?
 System.out.print("加密后:");
char a='a';
for(int i=0;i<str.length();i++)
{
char a2=str.charAt(i);
if(a2>='A'&&a2<='Z')
{
if(a2>='X'&&a2<='Z')
{
if(a2=='X') a='A';
if(a2=='Y') a='B';
if(a2=='Z') a='C';
}
else
{ a=(char)(a2+3);}
}
System.out.print(a);}
}
if(num==2)
{
System.out.print("请输入需要解密的字符串:");
String str=scanner.next();
char b='b';
  System.out.print("解密后:");
for(int j=0;j<str.length();j++)
{char b2=str.charAt(j);
if(b2>='A'&&b2<'Z')
{
if(b2>='A'&&b2<'D')
{
if(b2=='A')b='X';
if(b2=='B')b='Y';
if(b2=='C')b='Z';
}
else
{ b=(char)(b2-3);}
}
System.out.print(b);}
}
}
}

4.结果截图

(二)动手动脑

1.String.equals()方法:比较的是两个字符串的内容。

2.Length():获取字符串的长度。

3.charAt():获取指定位置的字符。

4. getChars():获取从指定位置起的子串复制到字符数组中。

5.replace():子串替换。

6.toUpperCase():全部字符变为大写,返回新字符串。

7. toLowerCase():全部字符变为小写,返回新字符串。

8.trim():去除头尾空格。

9.toCharArray():将字符串对象转换为字符数组。

JAVA字符串05之课程问题解决的更多相关文章

  1. JAVA语法02之课程问题解决

    (一)示例程序+运行结果: ①EnumTest.java public class EnumTest { public static void main(String[] args) { Size s ...

  2. 灵魂拷问:为什么 Java 字符串是不可变的?

    在逛 programcreek 的时候,发现了一些精妙绝伦的主题.比如说:为什么 Java 字符串是不可变的?像这类灵魂拷问的主题,非常值得深思. 对于绝大多数的初级程序员来说,往往停留在" ...

  3. 最新咕咆+鲁班+图灵+享学+蚂蚁+硅谷+源码 Java架构师资料《Java架构师VIP课程》

    最新的Java架构师完整资料,完整视频+源码+文档. 每一套都是一百多个G的资料,无密. JAVA架构师全套课程 咕泡学院互联网架构师第一期 咕泡学院互联网架构师第二期 咕泡学院互联网架构师第三期 博 ...

  4. OMG,12 个精致的 Java 字符串操作小技巧,学它

    字符串可以说是 Java 中最具有代表性的类了,似乎没有之一哈,这就好像直播界的李佳琪,脱口秀中的李诞,一等一的大哥地位.不得不承认,最近吐槽大会刷多了,脑子里全是那些段子,写文章都有点不由自主,真的 ...

  5. Java 字符串格式化详解

    Java 字符串格式化详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 文中如有纰漏,欢迎大家留言指出. 在 Java 的 String 类中,可以使用 format() 方法 ...

  6. 20145212《Java程序程序设计》课程总结

    20145212<Java程序程序设计>课程总结 一.每周读书笔记链接汇总 第一周读书笔记 第二周读书笔记 第三周读书笔记 第四周读书笔记 第五周读书笔记 第六周读书笔记 第七周读书笔记 ...

  7. (转)Java字符串

    转自:http://blog.sina.com.cn/s/blog_899678b90101brz0.html 创建字符串有两种方式:两种内存区域(字符串池,堆)1," " 引号创 ...

  8. 20145223《Java程序程序设计》课程总结

    20145223<Java程序程序设计>课程总结 每周读书笔记链接汇总 第一周学习总结 第二周学习总结 第三周学习总结 第四周学习总结 第五周学习总结 第六周学习总结 第七周学习总结 第八 ...

  9. Java字符串split函数的注意事项

    Java字符串的split方法可以分割字符串,但和其他语言不太一样,split方法的参数不是单个字符,而是正则表达式,如果输入了竖线(|)这样的字符作为分割字符串,会出现意想不到的结果, 如, Str ...

随机推荐

  1. 设置 phoneGap/Cordova 3.4 应用程序启动动画闪屏 SplashScreen

    当Cordova 程序打包并安装到手机中后,我们会发现启动程序时,会有数秒的黑屏现象,常见的解决方法则是设置闪屏后面. 这里以 Android 程序为例,介绍Cordova设置启动画面的方法. 1. ...

  2. Ajax请求成功,进入error回掉函数

    后台无返回值,则不需要datatype.

  3. 获取tomcat下路径

    import java.io.File; public class MainTest { public static void main(String[] args) { //获取是项目的绝对路径 S ...

  4. Life is short

    相信不少码农曾看过类似“life is short, use Python”等之类略带调侃意味的小段子(譬如我),而其也并非不无道理.每门编程语言都是合理的存在,都有它们的优点,及缺陷. 码农们也大多 ...

  5. 使用JavaScript访问子节点方法elementNode.childNodes时,需要注意的地方

    有这样一个HTML结构 <div> javascript <p>javascript</p> <div>jQuery</div> <h ...

  6. Linux之RHEL6的开机流程分析

    开机——很多人觉得很简单的事情,只要按下电源开关,然后系统就会自然启动,没有什么需要学习的.其实不然,如果系统没有什么问题,可以正常登陆的时候,当然开机很简单.但更多的时候,我们需要知道当机子不能正常 ...

  7. AChecker + Selenium2对需要登录的页面进行自动化可访问性测试

    前言:这段时间还算比较空闲,我准备把过去做过的有些形形色色,甚至有些奇怪的研究总结一下,也许刚好有人用的着也不一定,不枉为之抓耳挠腮的时光和浪费的电力.   名词解释: 网站可访问性测试:国内基本没有 ...

  8. 将自己库添加Cocoapods支持

    给库添加Cocoapods支持, 使这个工具使用起来更加方便, 更好的使用Cocoapods, 助力iOS程序开发, 下面进入正题, 想要实现这个过程, 绝对不虚此读. 首先写好一个要添加Cocoap ...

  9. Ext5实现树形下拉框ComboBoxTree

    最近为了实现一个属性下拉框被Ext框架折腾了好几天.. 所以,首先要说的是,不管你要做什么系统.强烈建议你不要选择Ext.据我这几天的搜索,应该这个框架现在用的人也很少了. Ext框架的缺陷:框架沉重 ...

  10. Redis学习-基础环境介绍(二)

    1.通过VMware安装了Centos6.8系统 2.Reids安装过程,需要GCC环境 »通过下面命令,根据提示直接安装 1 yum install gcc 3.Redis选用的是3.2.4(建议使 ...