一、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. [Visual Studio] .vsix项目模板制作

    Visual Studio (VSIX,项目模板 )制作   下载Vsiual Studio 2012 SDK 下载地址:http://www.microsoft.com/en-us/download ...

  2. Unity3D中的UnitySendMessage方法的使用

    UnitySendMessage(“string”,“string”, ***),这是方法,我们至少需要传入两个参数,第一个参数为unity中的一个gameobject名称,第二个参数为这个gameo ...

  3. Tasker 模拟重复点击按钮

    http://stackoverflow.com.80bola.com/questions/21544271/android-tasker-app-advance-input-shell-comman ...

  4. Go 收藏

    Golang 定位解决分布式系统,服务器应用开发,主要竞争对手是 Java.Python 之类:Rust 定位解决单机安全问题,高性能场景偏系统底层开发,主要竞争对手就是 C 和 C++. Golan ...

  5. 浅析OpenGL光照

    浅析OpenGL光照 之前从来都没有涉及光照的内容,心想只要能通过常规的方法渲染出几何体甚至是模型就可以了,然而没有光照的日子注定是苦涩的,因为仅凭几何体和模型的颜色无法达到真是渲染的效果,在实际中有 ...

  6. 无损转换Image为Icon z

    如题,市面上常见的方法是: var handle = bmp.GetHicon(); //得到图标句柄 return Icon.FromHandle(handle); //通过句柄得到图标 此法的问题 ...

  7. python笔记26-命令行传参sys.argv实际运用

    前言 平常我们在用别人写好的python包的时候,在cmd输入xx -h就能查看到帮助信息,输入xx -p 8080就能把参数传入程序里,看起来非常酷. 本篇就来讲下如何在python代码里加入命令行 ...

  8. google protocol buffer的原理和使用(二)

    本文主要会介绍怎么使用Google Protocol的Lib来序列化我们的数据,方法非常多种,本文仅仅介绍当中的三种.其它的方法读者能够通过自行研究摸索.但总的来说,序列化数据总的来说分为下面俩步: ...

  9. Miscellaneos:版本控制、SVN、VSS

    ylbtech-Miscellaneos:版本控制.SVN.VSS 版本控制.SVN.VSS 1.A,版本控制返回顶部 1, 版本控制(Revision control)是一种软体工程技巧,籍以在开发 ...

  10. [Usaco2006 Nov]Roadblocks第二短路

    贝茜把家搬到了一个小农场,但她常常回到FJ的农场去拜访她的朋友.贝茜很喜欢路边的风景,不想那么快地结束她的旅途,于是她每次回农场,都会选择第二短的路径,而不象我们所习惯的那样,选择最短路. 贝茜所在的 ...