黑马程序员——String类和基本数据类型包装类
来源:互联网 发布:js 日期转时间戳 编辑:程序博客网 时间:2024/05/21 14:50
——- android培训、java培训、期待与您交流! ———-
- 黑马程序员String类和基本数据类型包装类
- String类
- StringBuffer
- 基本数据类型对象包装类
黑马程序员——String类和基本数据类型包装类
String类
- 字符串是一个特殊的对象。
Stings = new String();
和String s1="";
两种写法都是在创建对象,使用起来一样。
- 字符串一旦初始化就不可以被改变。
String str = "abc"; String str1 = new String("abc");
有什么区别 ?- java运行环境有一个字符串池,由String类维护,执行语句String str = “abc”时:
- 首先查看字符串池中是否存在字符串”abc”,如果存在则直接将“abc”赋给str,如果不存在则先在字符串池中新建一个字符串”abc”,然后再将其赋给str.
- 执行语句String str = new String(“abc”)时。不管字符串池中是否存在字符串“abc”,直接新建一个字符串“abc”,(注意,新建的字符串“abc”不是在字符串池中),然后将其赋给str
- 由此可见1的效率要高于2。
String类部分方法
char charAt(int index)
返回指定索引处的 char 值。索引范围为从 0 到 length() - 1。序列的第一个 char 值位于索引 0 处,第二个位于索引 1 处,依此类推,这类似于数组索引。
int length()
返回此字符串的长度。
char[] to CharArray()
将此字符串转换为一个新的字符数组。
int indexOf(String str)
返回指定子字符串在此字符串中第一次出现处的索引。
boolean endsWith(String str)
测试此字符串是否以指定的后缀结束。
String[] split(String reg)
根据给定正则表达式的匹配拆分此字符串。
String substring(int index)
返回一个新的字符串,它是此字符串的一个子字符串。该子字符串从指定索引处的字符开始,直到此字符串末尾。
String substring(int beginIndex, int endIndex)
返回一个新字符串,它是此字符串的一个子字符串。该子字符串从指定的 beginIndex 处开始,直到索引 endIndex - 1 处的字符。因此,该子字符串的长度为 endIndex-beginIndex。
String(char[] arr)
分配一个新的 String,使其表示字符数组参数中当前包含的字符序列。该字符数组的内容已被复制;后续对字符数组的修改不会影响新创建的字符串。
String内存图:
StringBuffer
- 字符串的组成原理就是通过该类实现的。
- StringBuffer可以对字符串内容进行增删。
- StringBuffer是一个容器。
- 很多方法与String相同。
- StingBuffer是可变长度的。
StringBuffer特有方法
StringBuffer append(int x)
将参数的字符串表示形式追加到序列。
StringBuffer delete(int start, int end )
移除此序列的子字符串中的字符。该子字符串从指定的 start 处开始,一直到索引 end - 1 处的字符,如果不存在这种字符,则一直到序列尾部。如果 start 等于 end,则不发生任何更改。
StringBuffer insert(int index,String str)
按顺序将参数中的字符插入此序列中的指定位置,将该位置处原来的字符向后移,此序列将增加该参数的长度。
StringBuffer reverse();
将此字符序列用其反转形式取代。
JDK1.5出现一个StringBuilder,区别是StringBuffer是同步的,StringBuilder是非同步的。
基本数据类型对象包装类
对应关系:
- 将基本数据类型封装成对象的好处在于可以在对象中定义更多的功能方法操作该数据。
- 常用的操作之一:用于基本数据类型与字符串之间的转换。
- 例:Integer的parseInt方法,intValue方法。
- JDK1.5以后,简化了定义方式。
- Integer x = new Integer(4);可以直接写成
- Integer x = 4;//自动装箱。
- x = x + 5;//自动拆箱。通过intValue方法。
- 需要注意:
- 在使用时,Integer x = null;上面的代码就会出现NullPointerException。
- 黑马程序员—基本数据类型包装类和String类
- 黑马程序员——String和基本数据类型包装类
- 黑马程序员——String类、基本数据类型包装类
- 黑马程序员---String类和基本数据类型包装类
- 黑马程序员--String系列和基本数据类型包装类
- 黑马程序员----String,StringBuffer和基本数据类型的包装类
- 黑马程序员————Java基础之String类和基本数据类型包装类
- 黑马程序员——Java基础---String类和基本数据类型包装类
- 黑马程序员——Java基础---String类和基本数据类型包装类
- 黑马程序员——String类和基本数据类型对象包装类
- 黑马程序员——多线程、String类和基本数据类型包装类
- 黑马程序员——Java基础---String类和基本数据类型包装类
- 黑马程序员——Java基础---String类和基本数据类型包装类
- 黑马程序员——Java学习笔记 String类和基本数据类型对象包装类
- 黑马程序员——String类和基本数据类型包装类
- 黑马程序员——java基础-String类和基本数据类型包装类
- 黑马程序员——Java基础---String类和基本数据类型包装类
- 黑马程序员——Java基础---String类和基本数据类型包装类
- 图数据库之neo4j-jdbc的使用
- HDU 4705 Y (树形DP)
- HDU 5334(Virtual Participation-(A+C+1)(B+C+1)=K+(1+C)^2-C)
- ACdream 1073
- 115个Java面试题和答案——终极列表(上)
- 黑马程序员——String类和基本数据类型包装类
- 微信记录恢复软件MMRecovery下载与使用方法
- 115个Java面试题和答案——终极列表(下)
- 黑马程序员-[C语言]第三篇:指针总结
- 在VirtualBox中安装Ubuntu 的增强工具包
- 杭电1557
- C++RTTI强制转型
- 我叫MT2 v1.9.5.0 安卓版
- 欢迎使用CSDN-markdown编辑器