java基础4_字符串
一 字符串
Java字符串关键字是String,是一个类,创建新的字符串即创建一个新的对象。
1.字符串的声明及初始化。
String str; //只做声明
String str1="aaaa"; //声明并赋值,注意此时是在字符串常量池中创建对象,并将对象的内存地址赋值给str1
String str2=new String("aaaa"); //aaaa已在常量池中存在,将常量池中的字符串赋值给新的对象
String str3=new String();
str3="bb"; //在常量池中创建新的字符串"bb",并将其赋值给str3
注意:1.对于java程序中的字符串直接常量,JVM会使用一个字符串缓存池来保存它们。当第一次使用某个字符串直接常量时,JVM会将它放入字符串池中进行缓存。
2.使用new操作创建的字符串对象不指向字符串池中的对象。
2.字符串类String是Object下的直接子类,并且是final的,意味着不可继承。
3.字符串构造方法有很多,常用的有无参的和传一个字符串的构造方法,另外也有传一个字符型数组,byte型数组等等的构造方法。
3.常用方法。
charAt(int index),返回索引下标位子的字符。(字符串底层是一个char类型的数组,下表从0开始)
compareTo(String anotherString),返回比较的长度之差。
concat(String str),连接一个字符串,并将连接后的新串返回,不改变原来的字符串。
contains(CharSequence s),判断字符串中是否含有某一个字符,返回true或false。
copyValueOf(char[] data),是一个静态的方法,将一个字符数组转化为一个字符串返回回来。
endsWith(String suffix),判断是否以某字符串结尾。
equals(Object anObject),判断两个字符串是否相等,区分大小写,为真返回true。
equalsIgnoreCase(String anotherString),判断两个字符串是否相等,忽略大小写,为真返回true。
hashCode(),返回字符串的哈希码,对两个同值的字符串来说,hash码都是一样的,用equals方法比较时返回是true。
indexOf(String str)
,返回某个子串在字符串中第一次出现的位子。
intern(),返
回该字符串在字符串缓存池中相同值的对象,若没有回创建一个再返回。
isEmpty(),判断是否为空,是返回true。
lastIndexOf(String str),返回某个子串在该字符串中最后出现的位子。
length(),返回该字符串的长度。
replace(char oldChar, char newChar),替换字符串中的字符,并返回一个新串,不会对原来的字符串进行改变。
replaceAll(String regex, String replacement),替换字符串中的字符串,并返回一个新串,不会对原来的字符串进行改变。
split(String regex),按某字符串为界限左右拆分,分为多个子串后返回一个字符串数组
String[]。
startsWith(String prefix),判断是否以某个子串开头。
substring(int beginIndex, int endIndex),截取子串。
toCharArray(),将该字符串作为一个字符型数组返回。
toLowerCase(),将字符串中的字母变成小写输出。
toUpperCase(),将字符串中的字母变成大写输出。
trim(),去掉前后空格后返回,不会对原来的字符串进行改变。
valueOf(),是一个静态的方法,将其他类型转化为字符串类型,有多个重载的方法,参数可以是基本数据类型,字符串数组以及对象类型。
java基础4_字符串的更多相关文章
- java基础练习 字符串,控制流,日历,日期等
1,对基本控制流程的一些练习 package org.base.practice3; import org.junit.Test; /** * Created with IntelliJ IDEA. ...
- 再回首,Java温故知新(八):Java基础之字符串
字符串是Java中使用频率最高的类,但是它却不属于基本类型,而是预定义了String类来表示.从String类的源码可以看到,String是基于char[]实现的,而且Java中的String是不可变 ...
- JAVA基础之字符串和面向对象
* [String 类] * 1. String类位于java.lang包中,java.lang是java的语言包,使用时无须导包,自动导入. * * 2.拿到一个字符串对象: * ①字面量声明:St ...
- Java基础 -- 连接字符串时,使用+还是StringBuilder
结论 1-源代码中使用的+连接,实际上都使用的是StringBuilder. 2-用jad工具反编译,好处之一就是可以同时生成字节码和源代码.这样可以进行对照研究. ----------------- ...
- java基础知识—字符串
1.声明字符串的方法: String s ="你好" String s=new String("你好"); 2.字符串的长度: 字符串.length(); 3. ...
- Java基础篇--字符串处理(StringBuffer)
字符串处理 在Java中最常将字符串作为String类型对象来处理.同时String中也提供了很多操作字符串的函数(可自行查阅资料),而本篇将介绍StringBuffer如何操作字符串. String ...
- JAVA基础补漏--字符串
字符串常量池 String a="abc"; String b="abc"; char[] str = {"a","b" ...
- Java基础中字符串与字符的注意点!
在Java中,字符的表达与字符串的表达是不一样的!话不多说,直接上代码!!! String a="a"; char a='a'; 其中他们的引号是不一样的
- java基础之字符串
以下内容摘自<java编程思想>第十三章. 1. 不可变 String String 对象是不可变对象,String 类中每一个看起来会修改 String 值的方法,实际上都是创建了一个全 ...
随机推荐
- 使用js把json字符串转为js对象的方法
ECMA-262(E3) 中没有将JSON概念写到标准中,还好在 ECMA-262(E5)中JSON的概念被正式引入了,包括全局的JSON对象和Date的toJSON方法. 1,eval方式解析,恐怕 ...
- CUDA代码的高亮设置
以下基于"WIN7(64位)+Visual Studio 2010+CUDA7.5". 语法高亮除了看起来舒服之外,还可以使用F11寻找函数.变量定义,输入函数的时候也会有相应的提 ...
- Spring MVC CORS support
使用详见: https://spring.io/blog/2015/06/08/cors-support-in-spring-framework 简单用法,在Controller 方法上加 @Cros ...
- 记一次TFS 的 垃圾提示(无法下载 未获取项目 的 代码)
提示 “ 所有文件都是最新的 ”,但是在 源码管理 里面 确是 “未下载” 我艹,第一次遇到.如图.~~ 最后发现是 TFS 的项目权限设置问题. 你妈个马批的,啥子鸡巴破B提示,太阳你妈B 的 .要 ...
- z-index和transform
z-index和transform是CSS中的属性,但很少同学将二者联系到一起,感觉他们八杆子打不上.事实真的是这样吗?如果你也不能确认,这篇文章就值得你花点时间阅读.因为阅读完了,你会有所收获的. ...
- C++中数据对齐
大体看了看数据对齐,不知道是否正确,总结如下: struct A { char name; double dHeight; int age; }; sizeof(A) = (1+7+8+4+4) = ...
- UITableViewCell的highlighted 和selected 属性1
将UITableViewCell的selectedBackgroundView设置为按下图片的状态,同时不支持多选的情况下,遇到如下问题: 如果默认第一个cell处于selected状态,然后再点击其 ...
- eclipse在光标停留在同一对象的背景色提示,开启与关闭
eclipse在光标停留在变量上的时候,同一变量能够提示相同的背景色.这个功能感觉不起眼,但是实在是很好用啊.如果不小心点消失了会很麻烦. 这里留个记录,如果关闭了记得开启: 开启关闭的位置在工具栏上 ...
- 清空stringbuilder
大家知道对于字符串频繁拼接是使用stringbuilder.Append方法比使用string+=方法效率高很多,但有时需要清空stringbuilder时却不知道怎么清空,因为它没有clear或em ...
- 其他浏览器(firefox,chrome)可以上网 ie(Internet Explorer)无法上网 解决方法
http://blog.csdn.net/andywangcn/article/details/8945366