标准类库和常用工具类_第1页
标准类库和常用工具类_第2页
标准类库和常用工具类_第3页
标准类库和常用工具类_第4页
标准类库和常用工具类_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Java程序设计案例教程标准类库和常用工具类本章要点Java常用的基础类介绍Java常用的集合类介绍Object类Object类是所有Java类的父类。我们平时使用它的情况主要集中在两个方面。(1)作为形式参数的类型。(2)使用或重写Object的方法。Object类的主要方法:(1)作为形式参数的类型。Object类作为形式参数的类型可谓是有得天独厚的条件。因为,它是所有类的父类,不论是何种类型的实际参数,都可以与Object类型的形式参数相匹配。有些方法的使用范围很广,可能面对各种数据类型的实际参数,其形式参数只能定义为Object类型。(2)使用或重写Object的方法。Object类既然是所有类的父类,那么所有类的公共属性都包含在这个类中。我们使用的很多类中的某些方法如果追根溯源的话,都来自Object类。比如toString()方法。很多类都重写了Object类的这个方法。Object类的主要方法及功能如下:(3)publicclassgetClass();

功能:获取当前对象的所属类的信息,返回值为类的对象。Object类的主要方法:(4)publicboolean

equals(Objectarg0);

功能:比较两个对象是否相同。如果相同返回true,否则返回false。(5)protectedObjectclone();

功能:生成当前对象的一个备份,并返回这个复制的对象。(6)publicStringtoString();

功能:返回当前对象本身的有关信息,返回值为字符串。此方法是其它类重写最多的方法。(7)publicvoidnotify();

功能:唤醒线程。当一个线程处理阻塞状态时,可以通过此方法使其进入运行状态。(8)publicvoidnotifyAll();

功能:同样的是唤醒线程,但此方法能够唤醒所有等待此对象的线程。(9)publicvoidwait(longarg0);

功能:等待线程,参数为等待的时间。(10)protectedvoidfinalize();

功能:指定回收当前对象时所需要完成的清理工作。Java提供垃圾回收机制,可以将不再使用的资源清除,使其不再占用系统资源。此方法就是实现垃圾回收机制的主要方法。String类String定义对象的方法如下几种。

方式一:String对象名=newString();

方式二:String对象名=newString(String

str);

方式三:String对象名=newString(char[]ch);

方式四:String对象名=newString(char[]ch,int

off,int

len);String类的方法(1)字符串长度方法。

语法格式:publicintlength();

功能:获取字符串的字符个数。如str1.length()的结果为5。(2)字符串连接方法。

语法格式:publicStringconcat(String

str);

功能:将两个字符串相连。str1.concat(str2)的返回值是“HelloWorld”。(3)字符串替换方法。

语法格式:publicStringreplace(char

oldChar,charnewChar);

功能:将字符串oldChar表示的字符替换成newChar表示的字符,返回替换后的字符串。如str1.(‘l’,‘w’)的返回值为“Hewwo”。如果oldChar表示的字符在指定字符串中不存在,则返回原字符串。如str2.(‘h’,‘e’)的返回值为“World”。

语法格式:publicStringreplaceFirst(String

oldStr,StringnewStr);

功能:在字符串找到第一个oldStr子字符串,将其替换成newStr字符串。字符串中的其他oldStr子字符串不替换。如str1.(“l”,“w”)的返回值是“Hewlo”。如果oldstr表示的字符串在指定字符串中不存在,则返回原字符串。

语法格式:publicStringreplaceAll(String

oldStr,StringnewStr);

功能:将字符串中所有oldChar子字符串替换成newChar表示的字符串,返回替换后的字符串。如str1.(“l”,“w”)的返回值是“Hewwo”。如果oldStr表示的字符串在指定字符串中不存在,则返回原字符串。

需要提醒的是:replace()的参数是char型,它完成的是字符串中单个字符的替换操作。replaceFirst()和replaceAll()的参数类型是String,它们完成的字符串中子字符串的替换操作。如str2.replaceAll(“ld”,“th”)的返回值为“Worth”。String类的方法(4)子字符串返回方法。

语法格式:publicStringsubstring(intarg0,intarg1);

功能:从字符串第arg0位置开始,提取arg1-arg0个字符,并返回该字符串。字符串的位置编号从0开始。如str1.subString(1,3)的返回值是“el”。(5)字符截取方法。

语法格式:publiccharcharAt(intarg0);

功能:将字符串的第arg0位置的字符提取出来,并返回该字符。如str1.charAt(4)的返回值是“o”。如果所指定的位置超出字符串的位置,则会报告异常。

此方法与subString()类似。但是,subString()主要用于字符串提取,charAt()只能提取一个字符。

语法格式:publicvoidgetChars(int

strBegin,int

strEnd,char[]ch,int

chBegin);

功能:该方法可以截取一组字符,存放到char型数组中。从strBegin表示的字符串位置开始,提取strEnd-strBegin个字符,逐个存放在ch数组中。其中,chBegin用于指定存放字符时的ch的起始下标。如char[]ch=newch[5];str1.getChars(0,str1.length(),ch,0);最后将“Hello”中的字符分别存放在ch[0]~ch[4]中。

语法格式:publicchar[]toCharArray();

功能:将字符串中的全部字符转换成char型数组。如charch[]=str1.toCharArray()。

语法格式:publicbytegetBytes();

功能:该方法功能与toCharArray()方法类似,只不过存放字符的数组为byte型。如byte[]b=str1.getBytes();最后将“Hello”中的字符分别存放在b[0]~b[4]中。String类的方法(1)字符或字符串搜索方法。

语法格式:publicint

indexOf(intchar);或publicint

indexOf(String

str);

功能:搜索指定字符串中某字符或字符串第一次出现的位置。如果所搜索的字符或字符串存在,则返回第一次出现的位置值,如果不存在则返回-1。如str1.indexOf(‘l’)的返回值为2。str1.indexOf(“he”)返回值为0。

此方法有两种格式,分别处理字符和字符串的搜索。另外需要注意的是,第一种参数格式是int型。但是在使用时,我们通常向系统传递实形参数是字符,如str1.indexOf(‘e’)。因为每个字符在系统中都对应一个16位的int数值,所以,系统会将‘e’转换成int型数值,然后在字符串中搜索。char型与int型实际上是“相通”的。

语法格式:publicint

lastIndexOf(intchar);或publicint

lastIndexOf(String

str);

功能:搜索指定字符串中某字符或字符串最后一次出现的位置。如果所搜索的字符或字符串存在,则返回最后一次出现的位置值,如果不存在则返回-1。如str1.lastIndexOf(‘l’)的返回值为3。str1.lastIndexOf(“he”)返回值为0。(2)字符串大小写转换方法。

语法格式:publicStringtoLowerCase();和publicStringtoUpperCase();

功能:otLowerCase()方法将字符串转换成小写。toUpperCase()方法将字符串换成大写。如str1.toLowerCase()的返回值为“hello”。Str2.toUpperCase()返回值为“WORLD”。

(3)判断是否以某字符串开头或结尾方法。

语法格式:publicboolean

startsWith(String

str);和publicboolean

endsWith(String

str);

功能:startsWith()方法判断指定字符串是否以某字符串开头。endsWith()方法判断指定字符串是否以某字符串结尾。两个方法的返回值为boolean型。当指定字符串是以某字符串开头或结尾时,返回true,否则返回false。如str1.startsWith(“he”)的返回值为true,str2.endsWith(“td”)返回值为false。String类的方法(4)字符串比较方法。

语法格式:publicboolean

equals(Objectarg0);

功能:将字符串与参数中指定的字符串arg0进行比较,如果完全相等,则返回true,否则返回false。如str1.equals(str2)的返回值为false。该方法在进行比较时,区分大小写。

语法格式:publicboolean

equalsIgnoreCase(Objectarg0);

功能:将字符串与参数中指定的字符串arg0进行比较,如果完全相等,则返回true,否则返回false。如str1.equals(str2)的返回值为false。该方法在进行比较时,不区分大小写。

语法格式:publicint

compareTo(String

str);

功能:按照26个字母的排序逐个比较两个字符串中的字符。如果第一个字符在第二个字符前,则返回负整数。如果第一个字符在第二个字符之后,则返回正整数。如果两字符串完全相同则返回0。如str1.equals(“hello”)的返回值为-32。该方法在进行比较时,区分大小写。

语法格式:publicint

compareToIgnoreCase(Stringstr);

功能:该方法的功能与compareTo()基本相同,只不过该方法在进行比较时,不区分大小写。如pareToIgnor(“hello”)的返回值为true。equals()方法与==运算符equals()和==在使用时有如下规律。如果类重置了equals()方法,那么,比较的是对象所指向的空间内的值。而没有重置equals()方法类,所比较的是对象的地址。因为基本数据类型不是类,所以,用基本数据类型定义的变量无法使用equals()方法。String类重置了equals()方法,所以只要两个字符串内容完全一致,equals()就会返回true。StringBuffer类StringBuffer对象创建方式有以下三种。

方式一:StringBuffer

对象名=newStringBuffer();

方式二:StringBuffer

对象名=newStringBuffer(intsize);

方式三:StringBuffer

对象名=newStringBuffer(String

str);StringBuffer类方法(1)字符串长度方法。

语法格式:publicintlength();和publicintcapacity();

功能:length()返回字符串字符个数。capacity()返回字符串实际占用的空间,包括预留空间。如sb1.length()的返回值为0,sb1.capacity()返回值为16。sb1虽然没有设置初始值,但有系统默认分配了16个字符的空间。(2)添加字符串方法。

语法格式:publicStringBuffer

append(String

str);或publicStringBuffer

append(intarg0);或publicStringBuffer

append(Object

obj);

功能:将参数中字符串或其他类型的数据与指定字符串连接。如sb3.append(“EE”)的结果为“JavaEE”。该方法是StringBuffer类中最常用的方法之一,其格式不只上述三种,它支持所有数据类型和Object对象。(3)字符串插入方法。

语法格式:publicStringBuffer

insert(intarg0,Stringstr);或publicStringBuffer

insert(intarg0,charch);或publicStringBuffer

insert(intarg0,Objectobj);

功能:将参数中字符串或其他类型的数据插入到字符串的指定位置。如sb3.insert(1,‘2’)的结果为“j2ava”。该方法的格式不只上述三种,它可以支持所有数据类型和Object对象。(4)字符串替换方法。

语法格式:publicStringBuffer

replace(intstart,intend,Stringstr);

功能:start和end分别用于指定所替换字符串的起始和结束下标。str指定要替换的字符串。方法会将从start位置开始的end-start个字符替换成str指定的字符串。如sb3.replace(2,4,“ww”)的返回值为“jaww”。StringBuffer类方法(5)字符串删除方法。

语法格式:publicStringBuffer

delete(intstart,intend);和publicStringBuffer

deleteAt(intarg0);

功能:delete()方法删除从start位置开始的end-start个字符。deleteCharAt()方法删除arg0指定位置的字符。如sb3.delete(2,4)的返回值为“ja”,sb3.deleteCharAt(2)的返回值为“jaa”。(6)字符串取反方法。

语法格式:publicStringBufferreverse();

功能:将指定字符串取反。如sb3.reverse()的返回值为“vavj”。(7)子字符串返回方法。

语法格式:publicStringsubstring(intarg0,intarg1);

功能:该方法的功能与String类的substring()方法相同。如str1.subString(0,2)的返回值是“jav”。(8)字符截取和重新设置方法。

语法格式:publiccharcharAt(intarg0);和publicvoidsetCharAt(intarg0,charch);

功能:charAt()方法的功能与String类的charAt()方法相同。如sb2.charAt(2)的返回值是“v”。如果所指定的位置超出字符串的位置,则会报告异常。该方法不会改变字符串的原始值。setCharAt()方法将字符串中指定位置(arg0)的字符替换成ch表示的字符。如sb2.setCharAt(2,‘w’)的结果是“jawa”。此方法没有返回值,所以不能使用System.out直接输出。

语法格式:publicvoidgetChars(int

strBegin,int

strEnd,char[]ch,int

chBegin);

功能:该方法的功能与String类的getChars()方法相同,如char[]ch=newch[4];sb2.getChars(0,str1.length(),ch,0);最后将“Java”中的字符分别存放在ch[0]~ch[3]中。该方法不会改变字符原始值。包裹类基本数据类型包裹类booleanBooleanbyteBytecharCharactershortShortintIntegerlongLongfloatFloatdoubleDouble返回指定类型值的方法

语法格式:publicdoubledoubleValue();功能:返回调用对象的double值。

语法格式:publicfloatfloatValue();功能:返回调用对象的float值。

语法格式:publicbytebyteValue();功能:返回调用对象的byte值。

语法格式:publicshortshortValue();功能:返回调用对象的short值。

语法格式:publicint

intValue();功能:返回调用对象的int值。

语法格式:publiclonglongValue();功能:返回调用对象的long值。

语法格式:publiccharcharValue();功能:返回调用对象的char值。

语法格式:publicboolean

booleanValue();功能:返回调用对象的boolean值。比较数值大小方法语法格式:publicint

compareTo(Object

obj);

功能:obj为Double、Float、Byte、Short、Interger和Long包裹类创建的对象。将obj所指向的值与调用对象的值进行比较,如果两者相等返回值为0;如果调用对象的值小于obj的值返回负整数;如果调用对象的值大于obj的值返回正整数。需要提醒的是,obj的值与调用对象的值必须属于同一数据类型。比如du是Double创建的对象,而fl是Float创建的对象,则pareTo(fl)会报告错误。错误原因是类型不匹配。pareTo()的参数只能是double类型的数据。返回字符串方法

语法格式:publicStringtoString();

功能:返回调用对象的字符串表示。返回字符串相对应的数值表示方法

语法格式:publicstaticDouble/Float/Byte/Short/Interger/Long/Boolean/CharactervalueOf(String

str);

功能:返回str指定的字符串的数据形式。返回的数据类型与调用对象的类型一致。str必须是数值的字符串表示,如“123”,否则系统会抛出NumberFormatException异常。Boolean类和Character类也包含此方法。Math的常方法和功能语法格式功能publicstaticdoubleabs(double

arg);求arg的绝对值publicstaticdoubleexp(double

arg);求E的arg次幂publicstaticdoublefloor(double

arg);求不大于arg的最大数publicstaticdoubleceil(double

arg);求不小于arg的最小数publicstaticdoubleIEEEremainder(doublearg0,doublearg1);求arg0除以arg1的余数publicstaticdoublelog(double

arg);求自然对数publicstaticdoublemax(doublearg0,doublearg1);返回arg0和arg1中最大的值publicstaticdoublemin(doublearg0,doublearg1);返回arg0和arg1中最小的值publicstaticdoublepow(doublearg0,doublearg1);求arg0的arg1次方Math的常方法和功能publicstaticdoublerandom();产生0到1(不包括1)之间的随机数publicstaticdoublerint(double

arg);求arg的四舍五入值publicstaticdoublesqrt(double

arg);求arg的平方根publicstaticdoublesin(double

arg);求arg的正弦值,arg为弧度publicstaticdoublecos(double

arg);求arg的余弦值,arg为弧度publicstaticdoubletan(double

arg);求arg的正切值,arg为弧度publicstaticdoubleasin(double

arg);求arg的反正弦值(角度),arg为正弦值publicstaticdoubleacos(double

arg);求arg的反余弦值(角度),arg为余弦值publicstaticdoubleatan(double

arg);求arg的反正切值(角度),arg为正切值System类(1)数组复制方法。

语法格式:publicstaticvoidarraycopy(Object

src,int

srcstart,Object

dst,int

dststart,intlength);

功能:将数组src从srcstart指定的下标开始,复制length指定的长度,存放到dst数组。dst数组从dststart指定的下标开始接收src的数据。

假设有两个数组,分别为ch1和ch2,则System.arraycopy(ch1,0,ch2,0,ch1.length());语句的作用是将ch1的元素全部复制到数据ch2中获取系统所经历的时间

语法格式:publicstaticlongcurrentTimeMillis();

功能:返回从时间1970年1月1日00:00:00时起到当前所历经的毫秒数。根据这个毫秒数据就可以计算出当前时间。该计算操作是由另外一个名字为Date的类来完成。格式为:Datedate=newDate(System.currentTimeMillis());date默认为年月日表示。可以通过Date类提供的方法得到年、月、日、星期等信息。退出系统方法语法格式:publicstaticvoidexit(intstatus);

功能:退出Java当前运行的虚拟机。status有几种数值表示。这些数字只是程序退出时向操作系统提交一种状态信息。用户没有必要了解每一个数值的具体含义,只要知道0表示正常退出,非0为非正常退出就可以了。运行垃圾回收器方法语法格式:publicstaticvoidgc();

功能:Java有垃圾回收机制,这种机制会将程序不用的一些数据清除,避免占用过多的系统资源。这种机制大部分时候是自动执行的。但是,有时候系统无法确定有些数据是否仍然有效,只能通过用户进行手动清除,这时就需要使用该方法。获取系统环境变量语法格式:publicstaticStringgetenv(Stirngname);

功能:获取指定的系统环境变量的值。即在“系统属性—>高级—>环境变量”中设置的变量值。name的值需要在运行程序时,以参数的形式提供。如果使用该方法时,参数为空,将输出本地计算机中所有环境变量的值。获取系统属性方法

语法格式:publicPropertiesgetProperty(Stringkey);

功能:获取key指定的系统属性。如System.out.pritnln(System.getProperty(java.version));将输出当前使用的JDK版本号。变更in、out和err的默认设备方法

语法格式:publicstaticvoidsetOut(PrintStreamout);

功能:重新设置标准输出设备。

语法格式:publicstaticvoidsetIn(PrintStreamin);

功能:重新设置标准输入设备。

语法格式:publicstaticvoidsetErr(PrintStreamerr);

功能:重新设置标准错误输出设备。Collection语法格式功能publicabstractintsize();返回集合元素个数publicabstractboolean

isEmpty();判断集合是否为空publicabstractboolean

contains(Objectarg0);判断集合中是否包含某元素publicabstractIterator

iterator();在集合中使用迭代器。迭代器是用来访问集合中元素的一种接口publicabstractObject[]toArray();返回一个包含集合所有元素的数组publicabstractObject[]toArray(Object[]arg0);同toArray()。但要求返回的数组类型与参数arg0的类型相同。publicabstractboolean

add(Objectarg0);将对象添加给集合publicabstractboolean

remove(Objectarg0);在集合中删除arg0指定的对象publicabstractboolean

containsAll(Collectionarg0);查找集合中是否包含指定集合arg0中的所有元素Collectionpublicabstractboolean

addAll(Collectionarg0);将集合arg0中的所有元素添加到指定集合中publicabstractboolean

removeAll(Collectionarg0);删除集合中与arg0集合相同的元素publicabstractboolean

retainAll(Collectionarg0);与removeAll(Collectionarg0)相反。删除集合中与arg0集合不同的元素。publicabstractvoidclear();删除集合中所有元素publicabstractboolean

equals(Objectarg0);判断集合中的两对象是否相等(该方法由Object继承而来)publicabstractint

hashCode();返回对象的哈希码(该方法由Object继承而来)publicabstractIterator

iterator();返回Iterator接口。在进行Collection集合访问时会用到此方法。Set接口和HashSet类Set接口的实现类有两个,分别是HashSet类和TreeSet类。这两个类采用的数据结构不同。HashSet类使用哈希表作为存储结构,TreeSet类使用树作为存储结构。由于树的存储结构比哈希表要复杂,且不容易掌握,所以HashSet类比TreeSet类的应用要广。本节主要介绍HashSet类的使用。HashSetHashSet创建哈希集的方式如下几种:

方式一:HashSet

对象名=newHashSet();

方式二:HashSet

对象名=newHashSet(Collectionc);

方式三:HashSet

对象名=newHashSet(int

arg);List接口和ArrayList类List继承了Collection接口,它表示对象可重复的集合。List集合的元素是有顺序的。因此,该接口增加了对集合中元素位置的操作。为此,List接口重定义了一些与位置操作有关的方法。这些方法的具体应用会在List接口的实现类中介绍。实现List的类主要是ArrayList和Vertor。ArrayListArrayList集合的创建方式有如下几种:

方式一:ArrayList

对象名=newArrayList();

方式二:ArrayList

对象名=newArrayList(Collectionc);

方式三:ArrayList

对象名=newArrayList(int

arg);ArrayList类的常用的方法(1)容量调整方法。

语法格式:publicvoidensureCapacity(int

arg);

功能:增加集合的容量,容量大小由arg指定。该方法一般用在确切知道集合将会用到多大容量的情况下。通过该方法一次性的将所需要的容量分配给集合对象,比在预留空间不够用的时候,由系统临时分配要节省系统资源。

语法格式:publicvoidtrimToSize();

功能:根据元素列表大小整理集合容量。由于ArrayList集合在创建时系统会为其分配预留空间。如果已经确定集合元素不会再增加,就可以通过该方法将元素用不到的空间移除。否则,就会造成空间的浪费。ArrayList类的常用的方法(2)查找元素方法。

语法格式:publicint

indexOf(Object

arg);

功能:查找由arg指定元素的位置。查找顺序从前到后。如果查找的元素不存在则返回-1。注意:集合位置编号从0开始。

语法格式:publicint

lastIndexOf(Object

arg);

功能:查找由arg指定元素位置。查找顺序从后到前。如果查找的元素不存在则返回-1。

语法格式:publicObjectget(int

arg);

功能:获取arg指定位置的元素。如果集合中不存在arg指定的位置,则会抛出IndexOutOfBoundsException异常。ArrayList类的常用的方法(3)元素设置方法。

语法格式:publicObjectset(intarg0,Objectarg1);

功能:将集合arg0位置的元素设置为arg1指定的对象。arg0所指定的位置必须在已经创建并添加了对象的集合中存在,否则会抛出IndexOutOfBoundsException异常。(4)添加元素方法

语法格式:publicvoidadd(int

arg,Objectarg1);

功能:将元素加入到集合的指定位置。ArrayList类的常用的方法(5)删除元素方法。

语法格式:publicObjectremove(int

arg);

功能:将由arg指定位置的元素删除。VectorVector集合的创建方式有如下几种:

方式一:Vector对象名=newVector();

方式二:Vector对象名=newVector(Collectionc);

方式三:Vector对象名=newVector(int

arg);

方式四:Vector对象名=newVector(intarg0,intarg1);Map接口和Hashtable类Map接口描述的是不重复的键到值之间的映射关系。这种存储结构以“键-值”对作为单元。通过一个“键”就可以找到其对应的“值”。这些“键”和“值”可以是任何数据类型。这种“键-值”之间的映射与数组有些类似,但是比数组无论是在存储结构还是使用方面都要灵活得多。Map接口的方法(1)添加和删除操作的方法

语法格式:publicObjectput(Object

key,Objectvalue);

功能:建立指定关键字与值之间的映射关系,即添加Map元素。如果所添加的关键字在Map中已经存在,则新值会将旧值覆盖。该方法会将旧值返回。如果所添加的关键字不存在,方法返回为null。

语法格式:publicvoidputAll(Mapt);

功能:将指定Map中的所有映射复制到当前Map中。

语法格式:publicObjectremove(Objectkey);

功能:在Map中删除key所指定的关键字与值的映射,即删除Map中元素。

语法格式:publicvoidclear();

功能:从Map中删除所有映射,即清空Map。Map接口的方法(2)用于访问Map元素的方法

语法格式:publicObjectget(Objectkey);

功能:获取与关键字key相对应的值,并且返回与key相关的对象。如果Map中不存在关键字key,则返回null。

语法格式:publicboolean

containsKey(Objectkey);

功能:判断Map中是否存在关键字key。如果存在则返回true,否则返回false。

语法格式:publicboolean

containsValue(Objectvalue);

功能:判断Map中是否存在值value。如果存在则返回true,否则返回false

语法格式:publicintsize();

功能:返回当前Map中的映射数据量,即Map中的“键-值”对个数。

语法格式:publicboolean

isEmpty();

功能:判断当

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论