Java中String、StringBuffer、StringBuilder和toString的介绍
作为一个刚接触java的小白,觉得字符串是个比较大的知识点,所以我把自己整理的一点笔记写成随笔,与园友一起分享,也请园友多多指出意见。
一、String类
1、字符串长度——length()
String str = "coder";
System.out.print(str.length()); 输出结果:
5
2、字符串转换数组——toCharArray()
String str = "coder";
char data[] = str.toCharArray(); //调用String类中toCharArray方法
for (int i = 0; i < data.length; i++){
System.out.print(data[i]+" "); //加入空格,以示区分
} 输出结果:
c o d e r
3、从字符串中取出指定位置的字符——charAt()
String str = "coder";
System.out.print(str.charAt(3)); 输出结果:
e
4、字符串与byte数组的转换——getBytes()
String str = "coder";
byte bytes[] = str.getBytes();
for (int i = 0; i < bytes.length; i++){
System.out.print(new String(bytes)+"\t"); //加入换行,以示区分
} 输出结果:
coder
coder
coder
coder
coder
5、过滤字符串中存在的字符——indexOf()
String str = "coder@163.com";
System.out.print(str.indexOf("@")); 输出结果:
5
6、去掉字符串的前后空格——trim()
String str = " coder@163.com ";
System.out.print(str.trim()); 输出结果:
coder
7、从字符串中取出子字符串——subString()
8、大小写转换——toLowerCase()、toUpperCase()
9、判断字符串的开头结尾字符——endWith()、startWith()
10、替换String字符串中的一个字符——replace()
二、StringBuffer类
1、认识StringBuffer:
缓冲区、本身也是操作字符串,但是与String不同,StringBuffer是可以更改的。StringBuffer也是一个操作类,所以必须通过实例化进行操作
2、StringBuffer常用方法:
append()
insert()
replace()
indexOf()
举例:
StringBuffer str = new StringBuffer();
str.append("coder");
system.out.print(str.toString()); 输出结果:
coder
三、StringBuilder类
1、认识StringBuilder:
一个可变的字符序列,该类被设计作用StringBuffer的一个简易替换,用在字符串缓冲区被单个线程所使用的时候。建议优先考虑该类,速度比StringBuffer要快
2、但是如果涉及到线程安全方面,建议使用StringBuffer
2、StringBuilder常用方法:
append()
insert()
replace()
indexOf()
四、toString()方法
因为它是Object里面已经有了的方法,而所有类都是继承Object,所以“所有对象都有这个方法”。它通常只是为了方便输出,比如System.out.println(xx),括号里面的“xx”如果不是String类型的话,就自动调用xx的toString()方法。总而言之,它只是sun公司开发java的时候为了方便所有类的字符串操作而特意加入的一个方法。
StringBuffer str = new StringBuffer();
str.append("coder");
system.out.print(str.toString()); 输出结果:
coder
Java中String、StringBuffer、StringBuilder和toString的介绍的更多相关文章
- java中 String StringBuffer StringBuilder的区别
* String类是不可变类,只要对String进行修改,都会导致新的对象生成. * StringBuffer和StringBuilder都是可变类,任何对字符串的改变都不会产生新的对象. 在实际使用 ...
- java中String,StringBuffer,StringBuilder之间的区别
文章转载自:http://www.cnblogs.com/frankliiu-java/archive/2010/07/05/1771537.html String是固定长度的字符串,如果要发生变化必 ...
- Java中String/StringBuffer/StringBuilder区别(转)
1.三者在执行速度方面的比较:StringBuilder > StringBuffer > String 2.String <(StringBuffer,StringBuild ...
- java中string , StringBuffer , StringBuilder 区别
1.String String变量的值不能改变,如果要改变String变量的值,虚拟机首先会遍历方法区中的字符串常量,如果存在需要的值,则虚拟机直接把此常量值的地址分配给String变量,如果不存在这 ...
- 探秘Java中String、StringBuilder以及StringBuffer
探秘Java中String.StringBuilder以及StringBuffer 相信String这个类是Java中使用得最频繁的类之一,并且又是各大公司面试喜欢问 到的地方,今天就来和大家一起学习 ...
- JAVA中String和StringBuilder类的特点及使用
转自:https://www.imooc.com/code/2202 仅做个人学习记录之用,侵删! 什么是 Java 中的字符串 在 Java 中,字符串被作为 String 类型的对象处理. Str ...
- java 中String与StringBuilder 效率
之前印象中string与stringbuilder操作时,如果多次改变string就使用stringbuilder,效率会提高: 今天实际遇到了问题,亲身经历过之后,这性能不是一般的影响啊:不是同一个 ...
- Java中String、StringBuilder以及StringBuffer
原文出处: 海子 相信String这个类是Java中使用得最频繁的类之一,并且又是各大公司面试喜欢问到的地方,今天就来和大家一起学习一下String.StringBuilder和StringBuffe ...
- Java中String,StringBuffer与StringBuilder的差别
String 字符串常量: StringBuffer 字符串变量〈缓冲区〉(线程安全): StringBuilder 字符串变量〈缓冲区〉(非线程安全): 简要的说, String 类型和 Strin ...
- java中String、StringBuilder、StringBuffer三者的区别
在Java项目开发中,字符串是最长使用的数据类型,而有关字符串的String.StringBuilder.StringBuffer三者又常常让人分不清楚什么时候该使用哪个. 特此整理一下. Strin ...
随机推荐
- poj1006
题目大意:生物节律 一些人相信有三种循环在一个人生命中从他或者她出生的那天起,这个三个周期是,身体,情绪,智力, 并且他们有23,28,和33天的时间,在每一个周期里面都有一个周期,在一个周期的高峰期 ...
- Java调用R(二)_JRI
推荐使用.相比RServe更灵活,效率更高. 基本步骤 1. R中需要安装rJava包. 2. 系统变量Path加上 C:\Program Files\R\R-3.0.1\bin\i386;C:\ ...
- Linux一键安装PHP/JAVA环境OneinStack
OneinStack 是一款PHP/JAVA环境一键配置工具. OneinStack包含以下组合 lnmp(Linux + Nginx+ MySQL ...
- vs2008 多人同时开发项目时的代码注释规范格式 分类: C#小技巧 2014-04-23 14:12 297人阅读 评论(0) 收藏
多人同时开发一个项目,区分项目的那个窗体是谁开发的,例:下面的格式 /************************************************ 模块:服务器设置 ...
- JavaBean基础
JavaBean的概念 JavaBean是一种可重复使用.且跨平台的软件组件.JavaBean可分为两种:一种是有用户界面(UI,User Interface)的JavaBean:还有一种是没有用户界 ...
- 计数dp-hdu-4054-Number String
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4055 题目大意: 给一个只含‘I','D','?'三种字符的字符串,I表示当前数字大于前面的数字,D ...
- win32 api 文件操作!
CreateFile打开文件要对文件进行读写等操作,首先必须获得文件句柄,通过该函数可以获得文件句柄,该函数是通向文件世界的大门. ReadFile从文件中读取字节信息.在打开文件获得了文件句柄之后, ...
- The builder launch configuration could not be found
Export Wizard Error Errors occurred during the build Problems occured when invoking code from p ...
- 3xian之所在
最后一天,漫天飘起了雪花,假装欢送我离去. 这次WF之战不太顺利,早期的C题大概花了1秒钟构思,然而由于输出格式多了一个空格直到两个半小时才逃脱Wrong Answer的纠缠.还好lynncui在期间 ...
- 【转载】ASP.NET线程安全与静态变量的生命周期浅谈
ASP.NET线程安全所涉及的是什么呢?让我们先来看看静态变量的生命周期问题,下面是我理解的静态变量的生命周期: void Application_Start开始 void Application_E ...