首页 > 代码库 > 5.String

5.String

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

设计思想:先提示用户进行的操作是加密还是解密,用户输入一个字符串,加密时将前23个大小写字母+3,后3-23强制转换成char类型。解密时将后23个大小写字母-3,前3-23.char()方法将改变的字符连接到结果上。

技术分享

源代码://20153250 解密或加密字符串  陈欣容  

package demo;

import java.util.Scanner;

public class JieMi {

public static void main(String args[])

{

 Scanner s= new Scanner(System.in);//输入

 

     System.out.print("请输入要执行操作(1.加密,2解密):");

 

     int choose = s.nextInt();

 

     String result="";

 

     char temp;

     if(choose==1)//加密

 

     {

 

         System.out.print("请输入字符串:");

 

         String n=s.next();

 

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

 

         {

 

             if((n.charAt(i)>64&&n.charAt(i) < 88)||(n.charAt(i)>96&&n.charAt(i) < 120))

 

                 temp=(char)(n.charAt(i)+3);

 

             else if((n.charAt(i)>87&&n.charAt(i)<91)||(n.charAt(i)>119&&n.charAt(i)<123))

 

                 temp=(char) (n.charAt(i)-23);

             else

             {

                 System.out.println("输入有误");

                 break;

             }           

             result += temp;

         }

         System.out.println("加密后结果为:"+result);

     }

     else if(choose == 2)//解密

     {

         System.out.print("请输入字符串:");

 

         String n=s.next();

 

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

 

         {

 

             if((n.charAt(i)>67&&n.charAt(i)<91)||(n.charAt(i)>99&&n.charAt(i)<123))

 

                 temp=(char)(n.charAt(i)-3);

 

             else if((n.charAt(i)>64 &&n.charAt(i)<68)||(n.charAt(i)>96&&n.charAt(i) < 100))

 

                 temp=(char)(n.charAt(i)+23);

             else

             {

                 System.out.println("输入有误!");

                 break;

             }           

             result += temp;

         }

         System.out.println("解密后结果为:" + result);

     }

     else

         System.out.println("输入有误");

     s.close();

 }

}

截图:

 技术分享

 技术分享

二.String equals()使用方法

比较字符串内容是否相等

String s=”a”;

 System.out.print(s.equals(“a”));     返回true

三.String Length()使用方法

作用:获取字串长度

String s=new String(“hello”);

System.out.print(s1.length());

 技术分享

四.String类型charAt()使用方法

作用:获取指定位置的字符

 技术分享

五.String类型getChars()使用方法

作用:获取从指定位置起的子串复制到字符数组中(有4个参数)

参数1.被拷贝字符在字串中的起始位置

参数2:被拷贝的最后一个字符在字串中的下标再加1

参数3:目标字符数组

参数4:拷贝的字符放在字符数组中的起始下标

 技术分享

六.String类型replace()使用方法

作用:子串替换replace(a,b)b替换字符串中出现的所有a

 技术分享

七.String类型toUpperCase()使用方法

作用:转化成大写

String str=”hello”;  str.toUpperCase();

 技术分享

八.String类型toLowerCase()使用方法

作用:转化成小写

 技术分享

九.String类型trim()使用方法

作用:去除头尾空格

 技术分享

十.String类型toCharArray()使用方法

作用:将字符串对象转换位字符数组

 技术分享

注意定义的字符串数组是char类型,char s[]

5.String