程序设计思路:

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

第一步输入一个字符串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. Oracle 中新增字段后patch

    begin  ad_zd_table.patch('APPLSYS', 'CUX_3_GL_FARMER_BALANCE'); end ;

  2. centos 7 开启端口重启防火墙

    开启端口   firewall-cmd --zone=public --add-port=80/tcp --permanent   命令含义:   --zone #作用域   --add-port=8 ...

  3. nodejs(1)

    node.js 是一个让javascript运行在服务端的开发平台 node.js的环境部署 1.下载安装包 https://nodejs.org/en/ 安装后 打开cmd的dos窗口 运行node ...

  4. MC的内存管理和删除机制

    先看一下,什么叫做内存的碎片化: 如果用c语言直接 malloc,free 来向操作系统申请和释放内存时, 在不断的申请和释放过程中,形成了一些很小的内存片断,无法再利用. 这种空闲,但无法利用内存的 ...

  5. 为了解决mysqlbing翻译表字段问题而分析frm文件(持续更新)

    出处:kelvin19840813 的博客 http://www.cnblogs.com/kelvin19840813/ 您的支持是对博主最大的鼓励,感谢您的认真阅读.本文版权归作者所有,欢迎转载,但 ...

  6. HDOJ(1115)多边形重心

    Lifting the Stone http://acm.hdu.edu.cn/showproblem.php?pid=1115 题目描述:输入n个顶点(整数),求它们围成的多边形的重心. 算法:以一 ...

  7. c#委托和事件的介绍

    委托是一个类,它定义了方法的类型,使得可以将方法当作另一个方法的参数来进行传递.事件是一种特殊的委托. (1). delegate delegate我们常用到的一种声明   Delegate至少0个参 ...

  8. .net Session 超时控制

    webconfig里明明设置了timeout是很大的数值了,可是session的有效性仍然无法维持一小时. 查了一下,主要是说 mode="InProc" 的话,session是放 ...

  9. webstorm 2016 激活(转)

    2016.2.2 版本的破解方式: 安装以后,打开软件会弹出一个对话框:选择"license server" 输入:http://114.215.133.70:41017 2016 ...

  10. django框架的models

    在django的框架设计中采用了mtv模型,即Model,template,viewer Model相对于传统的三层或者mvc框架来说就相当对数据处理层,它主要负责与数据的交互,在使用django框架 ...