Java从零开始学三十(String和StringBuffer类)
一、StringBuffer连接字符操作

二、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类)的更多相关文章
- Java从零开始学三十二(正则表达式)
一.为什么要有正则 正则表达式可以方便的对数据进行匹配,可以执行更加复杂的字符串验证.拆份.替换功能. 例如:现在要求判断一个字符串是否由数字组成,则可以有以下的两种做法: 不使用正则完成 使用正则完 ...
- Java从零开始学三十九(对象序列化)
一.序列化 将对象的状态存储到特定存储介质中的过程 对象序列化,就是把一个对象变为二进制的数据流的一种方法,通过对象序列化可以方便的实现对象的传输或存储. 序列化保存对象的“全景图”,构建对象的“ ...
- Java从零开始学三十八(JAVA IO- 重定向IO)
一.三个静态变量 java.lang.System提供了三个静态变量 System.in(默认键盘) System.out(默认显示器) System.err 二.重写向方法 System提供了三个重 ...
- Java从零开始学三十六(JAVA IO- 字符流)
一.字符流 BufferedReader:BufferedReader是从缓冲区之中读取内容,所有的输入的字节数据都将放在缓冲区之中 BufferedWriter:把一批数据写入到缓冲区,当缓冲区区的 ...
- Java从零开始学三十五(JAVA IO- 字节流)
一.字节流 FileOutputStream是OutputStream 的直接子类 FileInputStream也是InputStream的直接子类 二.文本文件的读写 2.1.字节输入流 Test ...
- Java从零开始学三十三四(JAVA IO-流简述)
一.流概念(stream) File类并不能对文件内容进行读写. 读文件就是指:把文件的内中的数据读取到内存中来 写文件就是指:把内存中的数据写入到文件中去. 通过什么读写文件呢?文件流. 1.1.流 ...
- Java从零开始学三十一(DATE和Calendar类)
一.Date类 Date类是一个相对较为简单的操作类,在使用中直接使用java.util.Date类的构造方法并进行输出就可以得到一个完整的日期 二.Calendar类 Calendar类可以将取得的 ...
- Java从零开始学二十四(集合工具类Collections)
一.Collections简介 在集合的应用开发中,集合的若干接口和若干个子类是最最常使用的,但是在JDK中提供了一种集合操作的工具类 —— Collections,可以直接通过此类方便的操作集合 二 ...
- Java从零开始学四十四(多线程)
一.进程与线程 1.1.进程 进程是应用程序的执行实例. 进程是程序的一次动态执行过程,它经历了从代码加载.执行到执行完毕的一个完整过程,这个过程也是进程本身从产生.发展到最终消亡的过程 特征: 动态 ...
随机推荐
- SlickOne敏捷开发框架介绍(一) -- 基于Dapper, Mvc和WebAPI 的快速开发框架
前言:在两年前(最初发布时间:2013年1月9日(csdn),当前文章时间2015年11月10日),项目组推出了基于Dapper,Mvc和WebApi的快速开发框架,随着后续Slickflow产品的实 ...
- MyBatis入门实例-包括实体类与数据库字段对应&CLOB字段处理
1.我的开发环境是 jdk1.7+ecplise+oracle 11g 用到的jar包:mybatis-3.1.1.jar ojdbc6.jar 2.项目整体结构 3.首先配置conf.xml ...
- mysql 3.2.49 源代码安装-redhat 5 x64
[mysql@localhost ~]$ uname -r2.6.32 [root@localhost ~]#cp /usr/include/pthread.h /usr/include/pthrea ...
- Oracle中空值与数字相加问题
select 10 + 10 + 10 from dual 结果是30,全然没问题. select null + 10 + 10 from dual 结果是空串,但期望的结果是20. select n ...
- MVC扩展Filter,通过继承ActionFilterAttribute为登录密码加密
与ActionFilter相关的接口有2个: □ IActionFilter 对action执行前后处理 void OnActionExecuting(ActionExecutingContext f ...
- Selenium2+python自动化36-判断元素存在
前言 最近有很多小伙伴在问如何判断一个元素是否存在,这个方法在selenium里面是没有的,需要自己写咯. 元素不存在的话,操作元素会报错,或者元素有多个,不唯一的时候也会报错.本篇介绍两种判断元素存 ...
- 利用 FastCoding 将对象进行本地持久化
FastCoding https://github.com/nicklockwood/FastCoding A faster and more flexible binary file format ...
- struts2怎么实现页面到页面之间的传值?
我要实现一个产品订购的功能,在浏览产品的时候通过点击一个订购的链接,跳转到提交订单的页面,在跳转的同时要把浏览的产品的名称和型号传到提交订单的页面,并且把这里的订单类的产品名称和型号的表单域里赋上传递 ...
- VMware虚拟机的三种联网方法及原理
VMware虚拟机的三种联网方法及原理 博客分类: 操作系统 虚拟机Vmware互联网网络应用网络协议 一.Brigde——桥接 :默认使用VMnet0 1.原理: Bridge 桥"就 ...
- Lucene TFIDF打分公式
还没读TFIDFSimilarity的代码,读了一下lucene的文档,没有特复杂,感觉还是非常严谨的. 对于查询q和文档d,如果查询为纯token查询,套用向量空间模型(VSM),相似度度量使用余弦 ...