程序设计思路:

首先目标是使输入的字符串加上某个数变成另一个字符串,从而相当于对字符串进行加密。

第一步输入一个字符串String类型;

第二步把这个字符串转变成字符数组;

第三步让这个数组的每一个字符加三,如果加三之后超出了26个英文字母的范围,则让这个字母减去26-3;回到前面;

’第四步输出得到的字符串。

流程图:

源程序:

import java.util.Scanner;
/*
 * 字符的加密
 * 作者:徐浩军   日期:2016.10.26
 */

public class JiaMi {

    public static void main(String[] args) {
        // TODO Auto-generated method stub

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

        Scanner input=new Scanner (System.in );

            String a = input.next();        //输入一个字符串赋值给a

            char b[]=new char[100];       //定义一个字符数组,用于存储字符串

            int i;                //用于循环

            System.out.print("加密后的字符串为:");           

            for(i=0;i<a.length();i++)          //length()用于求字符串的长度
           {
                b[i]=(char) (a.charAt(i));                 //a.charAt(i)用于返回a字符串中第i 个字符    //并且存放在字符数组中

                b[i]+=3;                               //对字符数组中的每个字符进行加三的操作,从而实现加密

                if(b[i]-'a'>25){                      //当加三后超出了字母字符的边界时,使它返回字母字符的开头

                    b[i]-=26;
                    }                     //使得加三超出边界的字母返回来

                System.out.print(b[i]);         //输出加密后的字符
           }

    }

}

程序结果截图:

动手动脑之String.equals()方法:

String类中的equals()方法,主要用于判断当前字符串与传递进来的字符串的内容是否一致。

具体实现:

public boolean equals(Object anObject)

{

//如果是同一个对象

if (this == anObject)

{

return true;

}

//如果传递进来的参数是String类的实例

if (anObject instanceof String)

{

String anotherString = (String)anObject;

int n = count;//字符串长度

if (n == anotherString.count) //如果长度相等就进行比较

{

char v1[] = value;//取每一个位置的字符

char v2[] = anotherString.value;

int i = offset;

int j = anotherString.offset;

while (n-- != 0) //对于每一位置逐一比较

{

if (v1[i++] != v2[j++])

return false;

}

return true;

}

}

return false;

}

String的一些常用方法总结:

Length():获取字串长度

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

getChars():获取从指定位置起的子串复制到字符数组中(它有四个参数,在示例中有介绍)

replace():子串替换

toUpperCase()、 toLowerCase():大小写转换

trim():去除头尾空格:

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

05-Java中的String类的更多相关文章

  1. 关于Java中的String类知识点小总结

    Java中的String类知识点 前言 在 Java 中字符串属于对象,Java 提供了 String 类来创建和操作字符串. 如何创建字符串 最简单的方式 String str = "he ...

  2. JAVA中的String类(详解)

    Java.lang.String类是final类型的,因此不可以继承这个类.不能修改这个类.String是一个类不属于基本数据类型. 可以从源码中看到,String是一个final类型. String ...

  3. Java中的String类

    /*String类用于描述字符串事物的那么它就提供了多个方法对字符串进行操作 方法都会用,字符串这块就结束了常见的操作有哪些?“abcd”它应该具备什么功能,我们才能更好得操作它?1.获取(必须要掌握 ...

  4. java中的String类常量池详解

    test1: package StringTest; public class test1 { /** * @param args */ public static void main(String[ ...

  5. Java 中的 String 类常用方法

    字符串广泛应用在Java编程中,在Java中字符串属于对象,String 类提供了许多用来处理字符串的方法,例如,获取字符串长度.对字符串进行截取.将字符串转换为大写或小写.字符串分割等. Strin ...

  6. 为什么Java中的String类是不可变的?

    String类是Java中的一个不可变类(immutable class). 简单来说,不可变类就是实例在被创建之后不可修改. 在<Effective Java> Item 15 中提到了 ...

  7. Java中的String类能否被继承?为什么?

    不能被继承,因为String类有final修饰符,而final修饰的类是不能被继承的. Java对String类的定义: public final class String implements ja ...

  8. java中的String类的不可变性的小例子

    在java语言中,String类具有不可变性,即常量字符串不可更改.下面的一个小例子简单演示相关概念. public class test { public static void main(Stri ...

  9. Java学习笔记(一)——关于java中的String类

    [前面的话] 毕业将近6个月了,试用期也快要过去了,期待接下来的日子.在金融类性质的机构,最痛苦的是也许就是大部分系统外包,所以比较少写代码,在这六个月中只写了1个月左右的代码,然后每天都在做一些比较 ...

  10. java中关于string类和常量池的一点猜想

    public class StringTest { /**   * @param args   */  public static void main(String[] args) {   test1 ...

随机推荐

  1. C#实现Dll(OCX)控件自动注册的两种方法 网上找的 然后 自己试了试 还是可以用的

    尽管MS为我们提供了丰富的.net framework库,我们的程序C#开发带来了极大的便利,但是有时候,一些特定功能的控件库还是需要由第三方提供或是自己编写.当需要用到Dll引用的时候,我们通常会通 ...

  2. ps基础知识

    一 1. ps常用快捷键:ctrl+d 结束选区    ctrl+alt+z  返回          ctrl+z 撤销           ctrl+x 剪切 ctrl+t 编辑图片    ctr ...

  3. Could not find a getter for orderItems in class

    ::, ERROR ContextLoader: - Context initialization failed org.springframework.beans.factory.BeanCreat ...

  4. (分享)多功能 PDF转换器v3.0版本

    转换的效果非常不错,值得使用.破解成功的截图:这个程序必须随便输入注册码注册,不然会有水印的. 这是程序主界面了 正在测试pdf转word过程,转换结果个人感觉非常不错,跟原版pdf的格式非常接近,个 ...

  5. js一个抽奖的例子

    朋友公司开年会,帮忙写了个抽奖的demo,源码如下,github中有程序: html: <header> lottery demo </header> <div clas ...

  6. vi常用命令

    哎,看书上vi命令那么多,真是记不住.记几个常用的备忘吧. 在一般模式下(不可编辑),比如用vi命令打开或创建一个文件,常用的命令如下: 按键 作用 h或← 光标左移动一个字符 j或↓ 光标下移动一个 ...

  7. VAssistX使用小窍门

    日常使用中的一些VAssistX使用小窍门,简单总结下 一,修改VAssistX默认缓存文件路径,防止默认C盘被占用空间过大 1.  打开注册表HKCU\Software\Whole Tomato,新 ...

  8. 磁盘阵列(RAID)实例

    raid技术分类可以分为基于软件raid技术和基于硬件raid技术 raid又分为raid-0.raid-1.raid-5和raid-10 Raid有”廉价磁盘冗余阵列”的意思,就是利用多块廉价的硬盘 ...

  9. spark优化

    spark.shuffle.consolidateFiles=false 默认是false,shuffle阶段不进行文件的合并,1000个map和1000个reduce将产生1000 000个文件. ...

  10. [ASP.NET]

    public static int iA; protected void Button1_Click(object sender, EventArgs e) { //Label1.Text Respo ...