程序设计思路:

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

第一步输入一个字符串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. 《疯狂Java讲义》(一) ---- 关于学习Java的反思

    "听到Spring很火,就立马买来一本Spring的书来读,最后结果往往是失败,因为这种学习没有积累,没有根基,学习过程中困难重重,每天都被一些相同.类似的问题所困扰,起初热情十足,经常上论 ...

  2. (Hibernate进阶)Hibernate映射——多对多关联映射(八)

    多对多映射是现实生活中最常见的映射,也是最容易理解的映射.废话少说,直接开始. 映射原理 不论是单向关联还是双向关联都是通过第三张表,将两个表中的主键放到第三张做一个关联.用第三张表来解决可能会造成数 ...

  3. 腾讯云Centos下Nginx反向代理Apache+Tomcat

    1. 安装Apahce, PHP, MySQL以及php连接mysql库的组件#yum -y install httpd php mysql mysql-server php-mysql     // ...

  4. python基础学习

    1   list ()   定义 2   dict()   转化为字典 3   tuple()  转化为元组 4   sort() 和 sorted()区别 5   a.sort(key=lambda ...

  5. VS中基于对话框的MFC利用换肤改变边框颜色及格式

    第一版本: http://ishare.iask.sina.com.cn/f/13836420.html?from=like 2. http://www.cnblogs.com/phinecos/ar ...

  6. RandomAccessFile使用小结

    本文是基于Linux环境运行,读者阅读前需要具备一定Linux知识 RandomAccessFile是Java输入/输出流体系中功能最丰富的文件内容访问类,既可以读取文件内容,也可以向文件输出数据.与 ...

  7. 《Benign and maligenant breast tumors classification based on region growing and CNN segmentation》翻译阅读与理解

    注明:本人英语水平有限,翻译不当之处,请以英文原版为准,不喜勿喷,另,本文翻译只限于学术交流,不涉及任何版权问题,若有不当侵权或其他任何除学术交流之外的问题,请留言本人,本人立刻删除,谢谢!! 另:欢 ...

  8. C# ADO.NET (sql语句连接方式)(查询)

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  9. Winform 窗体控件随窗体自动(等比例)调整大小

    新建窗体程序了,添加窗体事件Load(加载窗体时).Resize(调整控件大小时).自定义方法setTag(获取控件的width.height.left.top.字体大小等信息的值).setContr ...

  10. eclipse重定向输入输出到文件

    最近在学习算法第四版,为了要用作者给的测试数据alg4-data,需要将数据直接导入到程序中.在作者的示例代码里用了重定向来做这个事情,但是在eclipse里使用重定向很不方便,查了很多资料,都说是在 ...