一、StringBuffer连接字符操作

当一个字符串的内容需要被经常改变时就要使用StringBuffer
在StringBuffer中使用append()方法,完成字符串的连接操作
 

二、StringBuffer类的常用方法

No.
方法定义
类型
描述
1
public StringBuffer()
构造
StringBuffer的构造方法
2
public StringBuffer append(char c)
方法
在StringBuffer中提供了大量的追加操作(与String中使用“+”类似),可以向StringBuffer中追加内容,此方法可以添加任何的数据类型。
3
public StringBuffer append(String str)
方法
4
public StringBuffer append(StringBuffer sb)
方法
5
public int indexOf(String str)
方法
查找指定字符串是否存在
6
public int indexOf(String str,int fromIndex)
方法
从指定位置开始查找指定字符串是否存在
7
public StringBuffer insert(int offset,String str)
方法
在指定位置处加上指定字符串
8
public StringBuffer reverse()
方法
将内容反转保存
9
public StringBuffer replace(int start,int end,String str)
方法
指定内容替换
10
public int length()
方法
求出内容长度
11
public StringBuffer delete(int start,int end)
方法
删除指定范围的字符串
12
public String substring(int start)
方法
字符串截取,指定开始点
13
public String substring(int start,int end)
方法
截取指定范围的字符串
14
public String toString()
方法
Object类继承的方法,用于将内容变为String类型

三、String类使用

package com.pb.demo1;

public class StringTest {

    public static void main(String[] args) {
String str="要好好学习Java!";
//长度length()方法
System.out.println(str+"的长度是: "+str.length());
//转换大小写toLowerCase(),toUpperCase()
System.out.println("转换为小写:"+str.toLowerCase());
System.out.println("转换为大写:"+str.toUpperCase());
//验证是否有J这个字符
int index=str.indexOf("J");
//有就返回下标,没有就返回-1
System.out.println(index);
//subString从0到4的字符但不包含下标是4的字符
System.out.println(str.substring(0, 4));
//从下标为4的开始到结束
System.out.println(str.substring(4));
//拆分
String email="wei@163.com;hao@sohu.com;aa@qq.com";
String [] emaillist=email.split(";");
//遍历数组
for (String s : emaillist) {
System.out.println(s);
}
} }

四、StringBuffer类

package com.pb.demo1;

public class StringBufferTest {

    public static void main(String[] args) {
StringBuffer str=new StringBuffer("abc_def_add_zzD");
//查找_第一次出现的位置
int indexfirst=str.indexOf("_");
System.out.println("查找_第一次出现的位置"+indexfirst);
//在第一个"_"的后面加上"A"
str.insert(indexfirst+1, "A");
System.out.println(str);
//查找最后一次出现"_"的索引位置
int indexlast=str.lastIndexOf("_");
System.out.println("查找最后一次出现_的索引位置"+indexlast);
//删除最后一个"_"
//str.deleteCharAt(indexlast);
str.delete(indexlast, indexlast+1);
System.out.println(str);
System.out.println("===================");
StringBuffer email=new StringBuffer("rock105@sohu.com");
////查找"@"的索引位置
int index=email.indexOf("@");
email.replace(0, index, "tom");
System.out.println(email); } }

Java从零开始学三十(String和StringBuffer类)的更多相关文章

  1. Java从零开始学三十二(正则表达式)

    一.为什么要有正则 正则表达式可以方便的对数据进行匹配,可以执行更加复杂的字符串验证.拆份.替换功能. 例如:现在要求判断一个字符串是否由数字组成,则可以有以下的两种做法: 不使用正则完成 使用正则完 ...

  2. Java从零开始学三十九(对象序列化)

    一.序列化 将对象的状态存储到特定存储介质中的过程 对象序列化,就是把一个对象变为二进制的数据流的一种方法,通过对象序列化可以方便的实现对象的传输或存储.   序列化保存对象的“全景图”,构建对象的“ ...

  3. Java从零开始学三十八(JAVA IO- 重定向IO)

    一.三个静态变量 java.lang.System提供了三个静态变量 System.in(默认键盘) System.out(默认显示器) System.err 二.重写向方法 System提供了三个重 ...

  4. Java从零开始学三十六(JAVA IO- 字符流)

    一.字符流 BufferedReader:BufferedReader是从缓冲区之中读取内容,所有的输入的字节数据都将放在缓冲区之中 BufferedWriter:把一批数据写入到缓冲区,当缓冲区区的 ...

  5. Java从零开始学三十五(JAVA IO- 字节流)

    一.字节流 FileOutputStream是OutputStream 的直接子类 FileInputStream也是InputStream的直接子类 二.文本文件的读写 2.1.字节输入流 Test ...

  6. Java从零开始学三十三四(JAVA IO-流简述)

    一.流概念(stream) File类并不能对文件内容进行读写. 读文件就是指:把文件的内中的数据读取到内存中来 写文件就是指:把内存中的数据写入到文件中去. 通过什么读写文件呢?文件流. 1.1.流 ...

  7. Java从零开始学三十一(DATE和Calendar类)

    一.Date类 Date类是一个相对较为简单的操作类,在使用中直接使用java.util.Date类的构造方法并进行输出就可以得到一个完整的日期 二.Calendar类 Calendar类可以将取得的 ...

  8. Java从零开始学二十四(集合工具类Collections)

    一.Collections简介 在集合的应用开发中,集合的若干接口和若干个子类是最最常使用的,但是在JDK中提供了一种集合操作的工具类 —— Collections,可以直接通过此类方便的操作集合 二 ...

  9. Java从零开始学四十四(多线程)

    一.进程与线程 1.1.进程 进程是应用程序的执行实例. 进程是程序的一次动态执行过程,它经历了从代码加载.执行到执行完毕的一个完整过程,这个过程也是进程本身从产生.发展到最终消亡的过程 特征: 动态 ...

随机推荐

  1. SlickOne敏捷开发框架介绍(一) -- 基于Dapper, Mvc和WebAPI 的快速开发框架

    前言:在两年前(最初发布时间:2013年1月9日(csdn),当前文章时间2015年11月10日),项目组推出了基于Dapper,Mvc和WebApi的快速开发框架,随着后续Slickflow产品的实 ...

  2. MyBatis入门实例-包括实体类与数据库字段对应&CLOB字段处理

    1.我的开发环境是 jdk1.7+ecplise+oracle 11g 用到的jar包:mybatis-3.1.1.jar ojdbc6.jar 2.项目整体结构     3.首先配置conf.xml ...

  3. mysql 3.2.49 源代码安装-redhat 5 x64

    [mysql@localhost ~]$ uname -r2.6.32 [root@localhost ~]#cp /usr/include/pthread.h /usr/include/pthrea ...

  4. Oracle中空值与数字相加问题

    select 10 + 10 + 10 from dual 结果是30,全然没问题. select null + 10 + 10 from dual 结果是空串,但期望的结果是20. select n ...

  5. MVC扩展Filter,通过继承ActionFilterAttribute为登录密码加密

    与ActionFilter相关的接口有2个: □ IActionFilter 对action执行前后处理 void OnActionExecuting(ActionExecutingContext f ...

  6. Selenium2+python自动化36-判断元素存在

    前言 最近有很多小伙伴在问如何判断一个元素是否存在,这个方法在selenium里面是没有的,需要自己写咯. 元素不存在的话,操作元素会报错,或者元素有多个,不唯一的时候也会报错.本篇介绍两种判断元素存 ...

  7. 利用 FastCoding 将对象进行本地持久化

    FastCoding https://github.com/nicklockwood/FastCoding A faster and more flexible binary file format ...

  8. struts2怎么实现页面到页面之间的传值?

    我要实现一个产品订购的功能,在浏览产品的时候通过点击一个订购的链接,跳转到提交订单的页面,在跳转的同时要把浏览的产品的名称和型号传到提交订单的页面,并且把这里的订单类的产品名称和型号的表单域里赋上传递 ...

  9. VMware虚拟机的三种联网方法及原理

    VMware虚拟机的三种联网方法及原理 博客分类: 操作系统 虚拟机Vmware互联网网络应用网络协议 一.Brigde——桥接  :默认使用VMnet0 1.原理: Bridge  桥"就 ...

  10. Lucene TFIDF打分公式

    还没读TFIDFSimilarity的代码,读了一下lucene的文档,没有特复杂,感觉还是非常严谨的. 对于查询q和文档d,如果查询为纯token查询,套用向量空间模型(VSM),相似度度量使用余弦 ...