欢迎来到天天文库
浏览记录
ID:41233098
大小:221.50 KB
页数:24页
时间:2019-08-20
《Java实用教程第7讲系统常用类(一)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第7讲系统常用类(一)7.1Scanner类7.2字符串7.3数据包装类7.4本讲小结(1)Scanner类Java没有提供类似于C语言中的Scanf()方法从键盘上得到输入,而是采用I/O或Scannner类来完成从键盘、文件、内存等媒介中获取数据(2)字符串字符串有可变长字符串和不可变长字符串之分,而对字符串进行比较时,很容易犯的错误就是使用“==”。(3)数据包转换Java提供了数据包装类来实现基本数据类型与对象之间的转换。7.1Scanner类Scanner是一个可以使用正则表达式来解析基本类型和字符串的简单文本扫描器。它使用分隔符模式将其
2、输入分解为标记,默认情况下该分隔符模式与空白匹配。可以使用不同的next方法将得到的标记转换为不同类型的值。Scanner常用的构造方法有三类:(1)Scanner(Filesource):构造一个新的Scanner,其生成值来自于指定文的文件。Scannersc=newScanner(newFile(“ScannerFile.java”));(2)Scanner(InputStreamsource):构造一个新的Scanner,其生成值来自于指定的输入流。Scannerin=newScanner(System.in);(in,“标准”输入流。此流
3、已打开并准备提供输入数据。)(3)Scanner(Stringsource):构造一个新的Scanner,其生成值来自于指定的字符串。importjava.util.Scanner;publicclassTestScanner{publicstaticvoidmain(String[]args){Scannerscan=newScanner("Hellotom!IamlearningJava");System.out.println(scan.nextLine());}}7.2字符串本节将Java字符串分为不可变长字符串(字符串常量)和可变长字符串
4、(字符串变量),本小节将主要介绍可变长和不可变长字符串,以及字符串之间的比较。7.2.1不可变长字符串不可变长字符串,也称字符串常量,由String类创建创建方法有两种。如:Strings1=“HelloWorld!”;Strings2=newString(“HelloWorld!”);Java程序中的所有字符串字面值(如"abc")都作为此类的实例实现。因为它是常量,所以其值在创建之后不能更改。思考:下面程序中字符串“HelloWorld”改变了吗?Strings3=“HelloWorld”;s3=s3+“!”;7.2.1不可变长字符串“Hell
5、oWorld”的值没有改变,而s3又指向了一个新的字符串“HelloWorld!”。下面程序可以测试这种情况://TestString.javapublicclassTestString{publicstaticStringaddString(Strings1){s1=s1+"def";returns1;}publicstaticvoidmain(String[]args){Strings="abc";System.out.println(s);addString(s);System.out.println(s);}}7.2.1不可变长字符串因为字
6、符串常量不能更改,所以对字符串常量的操作主要是检索字符串中的单个字符、比较字符串、搜索字符串、提取子字符串、创建字符串副本并将所有字符全部转换为大写或小写等操作。要深入了解String类中的方法,读者可以阅读JDKAPI文档。7.2.2可变长字符串由StringBuffer和StringBuilder创建的字符串是可变长字符串,称为字符串变量。如:StringBuilders5=newStringBuiler(“HelloWorld!”);对字符串变量的操作主要是添加、删除、修改等能够改变字符串内容和长度的操作,相关方法的用法请查阅JDKAPI文档
7、。7.2.2可变长字符串下面程序测试StringBufer类创建的字符串是可变长的。//TestStringBuffer.javapublicclassTestStringBuffer{publicstaticStringBufferaddStringBuffer(StringBufferbuf1){returnbuf1.append("def");}publicstaticvoidmain(String[]args){StringBufferbuf=newStringBuffer("abc");System.out.println(buf);ad
8、dStringBuffer(buf);System.out.println(buf);}}7.2.2可变长字符串Strin
此文档下载收益归作者所有