`
p330294088
  • 浏览: 14495 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
最近访客 更多访客>>
社区版块
存档分类
最新评论

String字符串

阅读更多

字符串
在前面我们已经知道字符串就是用双引号包起来的内容,我们一般用在屏幕输出,给出提示信息上, 字符串就是一个由零个或多个字符组成的字符序列, 字符串不是一个简单的基本数据类型,也不是一个字符数组, 在C,C++中,字符串的实现是以字符数组(char[ ])来实现的,在Java中,是以String类型的对象来实现字符串的.
String它即可以像int类型那样使用,还可以像int[]那样使用,不管你怎么使用,他都具有一些特殊的功能供我们使用.

Java将字符串作为内置的对象处理, 就提供了丰富的特性来处理字符串,例如,Java语言有多种方法用于比较两个字符串,查找子串,连接字符串以及改变字符串字母的大小写,而且,可以通过多种方式来构造String对象,这样在需要时可以很容易地获得一个字符串.

字符串的创建
String str; //声明一个字符串变量的类型
str = “abc”; //把一个字符串常量赋值给一个字符串变量str
请看示例: StringDemo.java

对于String类型的变量需要先初始化才能使用该变量,可以像上面先声明再初始化,还可以声明的时候初始化如
String str = “abc”; //这是使用常量赋值的方式

这只是创建字符串的方式之一,因为字符串是复杂类型,是Java的一个对象,所以还可以用new关键字以分配内存的方式初始化, 比如还可以这样String str = new String(“abc”); 这两种方式创建的字符串虽然在使用上没有任何区别, 但是在底层内存的分配上还是有区别的, 原因将在后面的学习中逐渐解答, 现在推荐大家使用前者方式创建字符串.

字符串函数
在Java语言的类库中, String类提供了对字符串的各种操作函数. 这将是我们今天学习的重点----字符串的操作与运用.

1. 字符串的截取: 即从某个字符串中, 截取该字符串其中的一部分作为一个新的字符串的操作,String类中的substring函数可以实现字符串的截取功能,该方法使用方法如下:
方式一: String substring(int beginIndex)   //指定开始位置,一直到结尾
方式二: String substring(int beginIndex, int endIndex) //指定开始位置,和结束位置

String为该函数的返回类型
substring是函数名
int beginIndex是开始的索引位置,包含该位置
int endIndex 结束位置,不包含该位置
请看示例SubstringDemo.java
 
2. 字符串的查找
就是在一个字符串中查找另一个字符串, String类提供了字符串的查找函数indexOf,这个函数的作用是返回指定子字符串在此字符串中第一次出现处的索引.使用说明如下:]
str.indexOf(String substr)

str.indexOf(String substr, int fromIndex)
str表示任何一个字符串常量或者字符串变量,即在哪个字符串中查找
substr 表示要查找的内容
fromIndex 表示开始位置的索引, 如果省略掉此参数,表示从字符串的第一个字符开始搜索指定的字符串,
结果,如果没有找到指定的字符串, 则返回”-1”
请看示例IndexOfString.java
   LastIndexOfString.java


3. 字符串的替换
对于一个字符串,可以用一个字符去替换该字符串中所有指定的字符,String类提供的replace函数可以实现这种替换操作.
str.replace(char oldChar, char newChar) 返回一个新的字符串,它是通过用 newChar 替换此字符串中出现的所有 oldChar 得到的。
请看示例RepalceString.java

4. 返回一个数据类型值的字符串形式
对于Java中的基本数据类型, 都可以通过String类提供的valueOf函数将其转换为字符串的形式,形式如下:
String valueOf(参数)
请看示例ValueOfString.java
    String.valueOf(a);
基本类型 -----------------------------字符串
    Integer.parseInt(str)

5. 大小写转换
String类提供两个无参函数来实现这种转换操作.
str.toUpperCase 全部转成大写
str.toLowerCase 全部转成小写
请看示例StringCase.java


6. 字符串插入
就是把一个指定的字符串插入到另一个字符串中指定的位置.
StringBuffer类的使用,后面介绍.

7. 字符串的连接
字符串的连接, 就是将两个字符串连接在一起,成为一个字符串
方式一: 使用”+”号, “+”不但可以连接两个字符串,还可以将字符串与其他数据类型相连接, 这种情况下,系统自动将其他类型转换为字符串再与该字符串连接.
方式二:String类提供的concat函数将指定的字符串与另一个字符串相连接,使用方式如下:
str.concat(String str1); 请看示例ConcatString.java


8. 字符串的比较
就是按字典顺序比较两个字符串,该比较基于字符串中各个字符的Unicode值
str.compareTo(String anotherString) 结果正数大 负数小 0 相等
str.equals(str2) 结果 一样true 不一样false
请看示例CompareString.java
   EquString.java
注意: “==”比较的是字符串在内存中是否指向同一个地址,如果要比较值是否相等的话,得用方法了equals

9. 字符串的长度
字符串的长度就是指一个字符串里包含字符序列的个数, String提供了一个无参数的函数length()来返回字符串的长度,该函数的返回值类型为int
请看示例StringLength.java
数组是length属性,没有括号,字符串是length方法,有括号length()

10. 去除字符串的前后空格
String类提供的无参数函数trim()可以将一个字符串开始和结尾的所有空格都去掉,它返回去掉空格后的字符串.
请看示例:StringTrim.java

11. 获取字符串中的指定字符
String类中的charAt函数和getChars函数可以获得一个字符串中的字符,其中charAt(可以获取一个指定索引处的字符),而getChars可以获取一个字符数组
str.charAt(int index)
str.getChars(int srcBegin, int srcEnd, char[] dst, int dstBegin)
srcBegin - 字符串中要复制的第一个字符的索引, 包含此处的字符。
srcEnd - 字符串中要复制的结束索引, 不包含此处的字符。
dst - 目标数组。
dstBegin - 目标数组中的起始下标。
请看示例GetChars.java


12. 测试字符串的前后缀
在字符串的使用中,会有判断一个字符串是否以指定的字符串开始或结尾的操作,可以利用String类提供的startsWith和endsWith函数来实现这种操作.返回值都是布尔型.
开始:true
不开始:false
请看示例StartEndString.java

13. 使用split函数进行字符串分割
字符串分割,就是按一定的规则把指定字符串拆分成多个字符串的操作,返回的是一个String[ ].
请看示例:SplitString.java


14. 使用StringTokenizer类进行字符串分割
了解一下,后面的学习完了之后再回头来讲.

15. 关于args
main函数是程序的主函数, 该函数的参数是一个字符串类型的数组
如何使用args参数呢,请看示例ArgsDemo.java
javac ArgsDemo.java
java ArgsDemo 12 12 125 18556 a a

16. 输入和输出
从键盘读入数据
请看示例BRReaderLines.javaa
 字符串数组自动初始化里面的值为null

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics