《Java编程那点事儿》读书笔记(四)——String和StringBuffer
String
1.toString:显示对象内容时系统自动调用的方法。
public class TOSTRING {
public String toString(){
return "this is toString method";
}
}
TOSTRING t = new TOSTRING();
System.out.println(t);
2.Math
Math.函数
3.String
1)char charAt(int n) //获得字符串索引为1的字符
String a = "abc";
char b = a.charAt(1); //b的值为'b'
2)int compareTo(String s)
String s = "abc";
String ss = "abd";
System.out.println(s.compareTo(ss));
比较两个字符串的大小,相等输出0;如果s小于ss,输出-1;如果s大于ss,输出1。
尝试了一下,比较"abc"和"ABC",输出的是32,不知道是什么=。=,如果要忽略大小写比较字符串的话可以用下面的compareToIgnoreCase(String s)函数
3)int compareToIgnoreCase(String s)
String s = "abc";
String ss = "BCD";
System.out.println("test compareTo");
System.out.println(s.compareToIgnoreCase(ss));
4)boolean endsWith(String s)
判断字符串是否以s结尾,如果是,返回true
String a = "student.doc";
boolean b = s.endsWith("doc");
5)equals
判断两个字符串对象内容是否相同。如果用“==”比较的是两个字符串在内存存储的地址是否一样。另外一个类似的方法是equalsIgnoreCase(s1);
6)int indexOf(String s,[int i])
查找s在字符串中的索引,找不到返回-1。如果加上参数i表示忽略前i个字符,直接从i+1处找s。对应的还是方法lastIndexOf
String s = "abc";
int index = s.indexOf('d'); //返回-1
index = s.indexOf('b',2); //返回-1
index = s.lastIndexOf('b'); //返回1
7)length方法:返回字符串的长度
8)replace方法:替换字符串中所有指定的字符,然后生成一个新的字符串。
replaceAll方法:替换某个制定的字符串——s.replaceAll("ba","12");
replaceFirst方法:替换s中第一次出现的制定字符串
9)split方法:以特定字符串作为间隔摘分字符串得到一个字符串数组
如果字符串内部存在和间隔字符串相同的内容时,将得到空字符串,例如abbcbtbb用b拆分得到{"a","","c","t"},结尾的空
字符串被忽略
10)String substring(int m):返回索引值m(包括)以后的所有字符作为子字符串
String substring(int m,int n):返回索引值m(包括)到n(不包括)之间的字符作为子字符串。
11)String trim():去掉字符串开始和结尾的空格。
12)valueOf:将其他类型的数据转换为字符串类型。static方法,不用创建String类型的对象。下面是一个判断自然数位数的程序
int n = 12345;
string s = String.valueOf(n);
int len = s.length(); //len值为5
StringBuffer
StringBuffer处理字符串的时候不生成新的对象,直接在原来的字符串上面修改。
1)初始化
StringBuffer s = new StringBuffer();
2)和String之间的转化
String s = "abc";
StringBuffer sb1 = new StringBuffer("123"); StringBuffer sb2 = new StringBuffer(s); //String转StringBuffer
String s1 = sb1.toString(); //StringBuffer转String
3)append方法
StringBuffer sb = new StringBuffer();
String user = "test";
String pwd = "123"; sb.append("select *from userInfo where username=")
.append(user)
.append("and pwd=")
.append(pwd);
4)public StringBuffer deleteCharAt(int index)
public StringBuffer delete(int start,int end) //删除start(包含)到end(不包含)间的字符
5)public StringBuffer insert(int offset, String str)
查了一下第二个参数的取值还有很多,包括boolean,int等。
6)reverse
7)public void SetCharAt(int index,char ch);
《Java编程那点事儿》读书笔记(四)——String和StringBuffer的更多相关文章
- 《实战Java高并发程序设计》读书笔记四
第四章 锁的优化及注意事项 1.锁性能的几点建议 减小锁持有时间: 系统持有锁时间越长锁竞争程度就越激烈,只对需要同步的方法加锁,可以减小锁持有时间进而提高锁性能. 减少锁的持有时间有助于降低锁冲突的 ...
- 《Java并发编程的艺术》读书笔记:二、Java并发机制的底层实现原理
二.Java并发机制底层实现原理 这里是我的<Java并发编程的艺术>读书笔记的第二篇,对前文有兴趣的朋友可以去这里看第一篇:一.并发编程的目的与挑战 有兴趣讨论的朋友可以给我留言! 1. ...
- 《深入了解java虚拟机》高效并发读书笔记——Java内存模型,线程,线程安全 与锁优化
<深入了解java虚拟机>高效并发读书笔记--Java内存模型,线程,线程安全 与锁优化 本文主要参考<深入了解java虚拟机>高效并发章节 关于锁升级,偏向锁,轻量级锁参考& ...
- 【转】Verilog HDL常用建模方式——《Verilog与数字ASIC设计基础》读书笔记(四)
Verilog HDL常用建模方式——<Verilog与数字ASIC设计基础>读书笔记(四) Verilog HDL的基本功能之一是描述可综合的硬件逻辑电路.所谓综合(Synthesis) ...
- 【转载】MDX Step by Step 读书笔记(四) - Working with Sets (使用集合)
1. Set - 元组的集合,在 Set 中的元组用逗号分开,Set 以花括号括起来,例如: { ([Product].[Category].[Accessories]), ([Product].[ ...
- <<Java RESTful Web Service实战>> 读书笔记
<<Java RESTful Web Service实战>> 读书笔记 第一章 JAX-RS2.0入门 REST (Representational State ransf ...
- 《Java并发编程的艺术》读书笔记:一、并发编程的目的与挑战
发现自己有很多读书笔记了,但是一直都是自己闷头背,没有输出,突然想起还有博客圆这么个好平台给我留着位置,可不能荒废了. 此文读的书是<Jvava并发编程的艺术>,方腾飞等著,非常经典的一本 ...
- 《Effective Java中文版第二版》读书笔记
说明 这里是阅读<Effective Java中文版第二版>的读书笔记,这里会记录一些个人感觉稍微有些重要的内容,方便以后查阅,可能会因为个人实力原因导致理解有误,若有发现欢迎指出.一些个 ...
- 《深入分析Java Web技术内幕》读书笔记之JVM内存管理
今天看JVM的过程中收获颇丰,但一想到这些学习心得将来可能被遗忘,便一阵恐慌,自觉得以后要开始坚持做读书笔记了. 操作系统层面的内存管理 物理内存是一切内存管理的基础,Java中使用的内存和应用程序的 ...
- 《Java7并发编程实战手册》读书笔记
一.线程管理 1.线程的创建和运行 创建线程的2种方式: 继承Thread类,并覆盖run()方法 创建一个实现Runnable接口的类.使用带参数的Thread构造器来创建Thread对象 每个Ja ...
随机推荐
- 6、android 普通日志输出到SD卡
这是本人见过写博文最负责的一个人: http://www.crifan.com/android_try_use_android_logging_log4j_to_output_log_to_sd_ca ...
- openfire插件开发之完美开发
http://redhacker.iteye.com/blog/1919329 一.说在前面 在继上篇Openfire3.8.2在eclipse中Debug方式启动最简单的方式后,我研究了openfi ...
- 浅谈IT
在没有学计算机应用技术之前我对IT的认知度几乎为零,曾经还天真的认为IT就是白领,只要做上IT行业,以后便可高枕无忧.后来阴差阳错学了这个专业.通过一年的学习,虽然学艺不精但多少对IT行业了解的一知半 ...
- NF3 里面的z cull reverse reload
nf3 siggraph2011的 分享 里面有谈对csm的优化. 1.mask white red 2. HI Z 这俩我都懂 3.reverse depth buffer这实在不明白, 为什么会有 ...
- CIFAR-10 Competition Winners: Interviews with Dr. Ben Graham, Phil Culliton, & Zygmunt Zając
CIFAR-10 Competition Winners: Interviews with Dr. Ben Graham, Phil Culliton, & Zygmunt Zając Dr. ...
- wifi current SSID
1. 引入头,#import <SystemConfiguration/CaptiveNetwork.h> 2. 获取SSID info + (id)fetchSSIDInfo { NSA ...
- PHP UTF-8和Unicode编号互转
PHP UTF-8和Unicode编号互转 /** * utf-8 转unicode * * @param string $name * @return string */ function utf8 ...
- shell如何自动输入密码
shell如何自动输入密码 http://linux.ctocio.com.cn/171/12162171.shtml
- (9)nehe教程3--添加颜色
添加颜色: 作为第二课的扩展,我将叫你如何使用颜色.你将理解两种着色模式,在左图中,三角形用的是光滑着色,四边形用的是平面着色. 上一课中我教给您三角形和四边形的绘制方法.这一课我将教您给三角形和四边 ...
- Maven的配置文件pom.xml
Maven的配置文件pom.xml 简介: 什么是POM? POM是项目对象模型(Project Object Model)的简称,它是Maven项目中的文件,使用XML表示,名称叫做pom.xml. ...