JAVA常用类的使用方法

JAVA常用类的使用方法
JAVA常用类的使用方法

JAVA常用类的使用方法

1、Integer类

2、Float类

3、Double类

4、Character类

5、String类

6、StringTokenizer类

7、StringBuffer类

8、Random类

1.Integer类的使用方法

Interger:整数类型

1、属性。

static int MAX_VALUE:返回最大的整型数;

static in tMIN_VALUE:返回最小的整型数;

static Class TYPE:返回当前类型。

例子:

System.out.println("Integer.MAX_VALUE:"+Integer.MAX_VALUE);

结果为:Integer.MAX_VALUE:2147483647

2、构造函数。

Integer(intvalue):通过一个int的类型构造对象;

Integer(Strings):通过一个String的类型构造对象;

例子:

Integeri=newInteger("1234");

生成了一个值为1234的Integer对象。

3、方法。

说明:

1.所有方法均为public;

2.书写格式:[修饰符]<返回类型><方法名([参数列表])>

如:

staticintparseInt(Strings)表示:此方法(parseInt)为类方法(static),返回类型为(int),方法所需参数为String类型。

1.byteValue():取得用byte类型表示的整数;

2.intcompareTo(IntegeranotherInteger):比较两个整数。相等时返回0;小于时返回负数;大于时返回正数。

例子:

Integeri=newInteger(1234);

System.out.println("https://www.360docs.net/doc/d117871512.html,pareTo:"+https://www.360docs.net/doc/d117871512.html,pareTo(newInteger(123)));

结果为:https://www.360docs.net/doc/d117871512.html,pareTo:1

3.intcompareTo(Objecto):将该整数与其他类进行比较。如果o也为Integer类,进行方法2的操作;否则,抛出ClassCastException异常。

4.staticIntegerdecode(Stringnm):将字符串转换为整数。

5.doubledoubleValue():取得该整数的双精度表示。

6.booleanequals(Objectobj):比较两个对象。

7.floatfloatValue():取得该整数的浮点数表示。

8.staticIntegergetInteger(Stringnm):根据指定名确定系统特征值。

9.staticIntegergetInteger(Stringnm,intval):上面的重载。

10.staticIntegergetInteger(Stringnm,Integerval):上面的重载。

11.inthashCode():返回该整数类型的哈希表码。

12.intintValue():返回该整型数所表示的整数。

13.longlongValue():返回该整型数所表示的长整数。

14.staticintparseInt(Strings):将字符串转换成整数。s必须是时进制数组成,否则抛出NumberFormatEx ception异常。

15.staticintparseInt(Strings,intradix):以radix为基数radix返回s的十进制数。所谓的基数,就是“几进制”。例子:

Strings1=newString("1010");

System.out.println("Integer.parseInt(Strings,intradix):"+Integer.parseInt(s1,2));

结果为:Integer.parseInt(Strings,intradix):10

16.shortshortValue():返回该整型数所表示的短整数。

17.staticStringtoBinaryString(inti):将整数转为二进制数的字符串。

18.staticStringtoHexString(inti):将整数转为十六进制数的字符串。

19.staticStringtoOctalString(inti):将整数转为八进制数的字符串。

20.StringtoString():将该整数类型转换为字符串。

21.staticStringtoString(inti):将该整数类型转换为字符串。不同的是,此为类方法。

22.staticStringtoString(inti,intradix):将整数i以基数radix的形式转换成字符串。

例子:

inti1=54321;

System.out.println("Integer.toString(inti,intradix):"+Integer.toString(i1,16));

结果为:Integer.toString(inti,intradix):d431

23.staticIntegervalueOf(Strings):将字符串转换成整数类型。

24.staticIntegervalueOf(Strings,intradix):将字符串以基数radix的要求转换成整数类型。

2.Float类的使用方法

Float:实数类型

1、属性。

1.staticfloatMAX_VALUE:返回最大浮点数,在不同硬件平台中由Float.intBitsToFloat(0x7f7fffff)计算得出。

2.staticfloatMIN_VALUE:返回最小浮点数,在不同硬件平台中由Float.intBitsToFloat(0x1)计算得出。

3.staticfloatNaN:表示非数值类型的浮点数,在不同硬件平台中由Float.intBitsToFloat(0x7fc00000)计算得出。

4.staticfloatNEGATIVE_INFINITY:返回负无穷浮点数,在不同硬件平台中由Float.intBitsToFloat(0xff800 000)计算得出。

5.staticfloatPOSITIVE_IN FINITY:返回正无穷浮点数,在不同硬件平台中由Float.intBitsToFloat(0x7f80000 0)计算得出。

6.staticClassTYPE:返回当前类型。

2、构造函数。

Float(doublevalue):以double类型为参数构造Float对象。

Float(floatvalue):以Float类型为参数构造Float对象。

Float(Strings):以String类型为参数构造Float对象。

3、方法。

说明:

1.所有方法均为public;

2.书写格式:[修饰符]<返回类型><方法名([参数列表])>

如:

staticintparseInt(Strings)表示:此方法(parseInt)为类方法(static),返回类型为(int),方法所需参数为String类型。

1.bytebyteValue():返回以字节表示的浮点数。

2.staticintcompare(floatf1,floatf2):此为类方法,比较f1和f2。相当于newFloat(f1).compareTo(newFloa t(f2))。如果f1与f2相等,返回0;小于关系,返回负数;大于关系,返回正数。

3.intcompareTo(FloatanotherFloat):此为对象方法,当前对象与anotherFloat比较。与2的比较规则相同。

4.intcompareTo(Objecto):当前对象与o进行比较,如果o属于Float类,那么,相当于3;如果是其他类,则抛出ClassCastException异常。

5.doubledoubleValue():返回浮点数的双精度值。

6.booleanequals(Objectobj):比较当前Float对象与obj的内容是否相同。大多数情况是比较两个Float

对象的值是否相等,相当于f1.floatValue()==f2.floatValue()的值。与2、3、4不同的是:6返回boolean 型。

7.staticintfloatToIntBits(floatvalue):按照IEEE754转化成float并输出它的十进制数值。

8.floatfloatValue():返回该浮点数对象的浮点数值。

9.inthashCode():返回该Float对象的哈希表码。

10.intintValue():返回该Float对象的整数值(整数部分)。

11.booleanisInfinite():判断该Float对象是否是无穷。

12.staticbooleanisInfinite(floatv):与11类似,不同的是:此为类方法,判断的是v。

13.booleanisNaN():判断该Float对象是否为非数值。

14.staticbooleanisNaN(floatv):功能与13一样,只不过判断v。

15.longlongValue():返回该Float对象的长整数值。

16.staticfloatparseFloat(Strings):将字符串转换成浮点数。

17.shortshortValue():返回该Float对象的短整数值。

18.StringtoString():将该Float对象转换成字符串。

19.staticStringtoString(floatf):功能与18一样,只是转换f。

20.staticFloatvalueOf(Strings):将字符串转换成浮点数。

例子:

Floatf=newFloat(1237.45);

Floatfs=newFloat("123.45");

Floatfd=newFloat(1234146865679824657987947924623724749.16416925);

System.out.println("https://www.360docs.net/doc/d117871512.html,pare(fs):"+https://www.360docs.net/doc/d117871512.html,pareTo(fs));

System.out.println("https://www.360docs.net/doc/d117871512.html,pareTo(fd):"+https://www.360docs.net/doc/d117871512.html,pareTo(fd));

System.out.println("https://www.360docs.net/doc/d117871512.html,pare(1.23f,3.25f):"+https://www.360docs.net/doc/d117871512.html,pare(1.23f,3.25f));

结果为:

https://www.360docs.net/doc/d117871512.html,pare(fs):1

https://www.360docs.net/doc/d117871512.html,pareTo(fd):-1

https://www.360docs.net/doc/d117871512.html,pare(1.23f,3.25f):-1

Floatf=newFloat(1237.45);

System.out.println("f.equals(fs):"+f.equals(fs));

结果为:f.equals(fs):false

3.Double类的使用方法

Double:双精度类型

1、属性。

1.staticDoubleMAX_VALUE:返回最大双精度数,在不同硬件平台中由Double.longBitsToDouble(0x7feff fffffffffffL)计算得出。

2.staticDoubleMIN_VALUE:返回最小双精度数,在不同硬件平台中由Double.longBitsToDouble(0x1L)

计算得出。

3.staticDoubleNaN:表示非数值类型的双精度数,在不同硬件平台中由Double.longBitsToDouble(0x7ff8 000000000000L)计算得出。

4.staticDoubleNEGATIVE_INFINITY:返回负无穷双精度数,在不同硬件平台中由Double.longBitsToDou ble(0xfff0000000000000L)计算得出。

5.staticDoublePOSITIVE_INFINITY:返回正无穷双精度数,在不同硬件平台中由Double.longBitsToDou ble(0x7ff0000000000000L)计算得出。

6.staticClassTYPE:返回当前类型。

2、构造函数。

Double(doublevalue):以double类型为参数创建Double对象。

Double(Strings):以String类型为参数创建String对象。

3、方法。

说明:

1.所有方法均为public;

2.书写格式:[修饰符]<返回类型><方法名([参数列表])>

如:

staticintparseInt(Strings)表示:此方法(parseInt)为类方法(static),返回类型为(int),方法所需参数为String类型。

1.bytebyteValue():返回以字节表示的双精度数。

2.staticintcompare(doubled1,doubled2):此为类方法,比较d1和d2。相当于newDouble(d1).compareT o(newDouble(d2))。如果d1与d2相等,返回0;小于关系,返回负数;大于关系,返回正数。

3.intcompareTo(DoubleanotherDouble):此为对象方法,当前对象与anotherDouble比较。与2的比较规则相同。

4.intcompareTo(Objecto):当前对象与o进行比较,如果o属于Double类,那么,相当于3;如果是其他类,则抛出ClassCastException异常。

5.staticlongdoubleToLongBits(doublevalue):把value按照IEEE754转化成long并输出它的十进制数值。

6.doubledoubleValue():返回该双精度数对象的双精度数值。

7.booleanequals(Objectobj):比较当前Double对象与obj的内容是否相同。大多数情况是比较两个Doub le对象的值是否相等,相当于d1.doubleValue()==d2.doubleValue()的值。

8.floatfloatValue():返回该浮点数对象的浮点数值。

9.inthashCode():返回该Double对象的哈希表码。

10.intintValue():返回该Double对象的整数值(整数部分)。

11.booleanisInfinite():判断该Double对象是否是无穷。

12.staticbooleanisInfinite(doublev):与11类似,不同的是:此为类方法,判断的是v。

13.booleanisNaN():判断该Double对象是否为非数值。

14.staticbooleanisNaN(doublev):功能与13一样,只不过判断v。

15.longlongValue():返回该Double对象的长整数值。

16.staticfloatparseFloat(Strings):将字符串转换成双精度数。

17.shortshortValue():返回该Double对象的短整数值。

18.StringtoString():将该Double对象转换成字符串。

19.staticStringtoString(Doublef):功能与18一样,只是转换f。

20.staticDoublevalueOf(Strings):将字符串转换成双精度数。

4.Character类的使用方法

Character:字符类型

1、属性。

staticintMIN_RADIX:返回最小基数。

staticintMAX_RADIX:返回最大基数。

staticcharMAX_VALUE:字符类型的最大值。

staticcharMIN_VALUE:字符类型的最小值。

staticClassTYPE:返回当前类型。

2、构造函数。

Character(charvalue):以char参数构造一个Character对象。

3、方法。

说明:

1.所有方法均为public;

2.书写格式:[修饰符]<返回类型><方法名([参数列表])>

如:

staticintparseInt(Strings)表示:此方法(parseInt)为类方法(static),返回类型为(int),方法所需参

数为String类型。

1.charcharValue():返回字符对象的值。

2.intcompareTo(CharacteranotherCharacter):当前Character对象与anotherCharacter比较。相等关系返回0;小于关系返回负数;大于关系返回正数。

3.intcompareTo(Objecto):当前对象与另一个对象进行比较。如果o是Character对象,则与2功能一样;否则,抛出ClassCastException异常。

4.staticintdigit(charch,intradix):根据基数返回当前字符的值的十进制。如果不满足Character.MIN_RADI X<=radix<=Character.MAX_RADIX,或者,ch不是radix基数中的有效值,返回"-1";如果ch是“大写”

的A到Z之间,则返回ch-'A'+10的值;如果是“小写”a到z之间,返回ch-'a'+10的值。

System.out.println("Character.MIN_RADIX:"+Character.MIN_RADIX);

System.out.println("Character.MAX_RADIX:"+Character.MAX_RADIX);

System.out.println("Character.digit('2',2):"+Character.digit('2',2));

System.out.println("Character.digit('7',10):"+Character.digit('7',10));

System.out.println("Character.digit('F',16):"+Character.digit('F',16));

结果为:

Character.MIN_RADIX:2

Character.MAX_RADIX:36

Character.digit('2',2):-1

Character.digit('7',10):7

Character.digit('F',16):15

5.booleanequals(Objectobj):与obj对象比较。当且仅当obj不为“null”并且和当前Character对象一致时返回“true”。

6.staticcharforDigit(intdigit,intradix):根据特定基数判断当前数值表示的字符。4的逆运算,非法数值时返回“'\u0000'”。

System.out.println("Character.MIN_RADIX:"+Character.MIN_RADIX);

System.out.println("Character.MAX_RADIX:"+Character.MAX_RADIX);

System.out.println("Character.forDigit(2,2):"+Character.forDigit(2,2));

System.out.println("Character.forDigit(7,10):"+Character.forDigit(7,10));

System.out.println("Character.forDigit(15,16):"+Character.forDigit(15,16));

结果为:

Character.MIN_RADIX:2

Character.MAX_RADIX:36

Character.forDigit(2,2):

Character.forDigit(7,10):7

Character.forDigit(15,16):f

7.staticintgetNumericValue(charch):返回字符ch的数值。

8.staticintgetType(charch):返回字符所属类型。具体有哪些种类请查看Java文档资料。

9.inthashCode():返回当前字符的哈希表码。

10.staticbooleanisDefined(charch):判断字符ch在Unicode字符集是否用明确定义。

11.staticbooleanisDigit(charch):判断字符ch是否为数字。

12.staticbooleanisIdentifierIgnorable(charch):判断字符ch是否为Unicode字符集中可忽略的字符。

13.staticbooleanisISOControl(charch):判断字符ch是否为ISO标准中的控制字符。

14.staticbooleanisJavaIdentifierPart(charch):判断字符ch是否为Java中的部分标识符。

15.staticbooleanisJavaIdentifierStart(charch):判断字符ch是否为Java中的第一个标识符。

16.staticbooleanisLetter(charch):判断字符ch是否为字母。

17.staticbooleanisLetterOrDigit(charch):判断字符ch是否为字母或数字。

18.staticbooleanisLowerCase(charch):判断字符ch是否为小写字母。

19.staticbooleanisMirrored(charc):根据Unicode表判断字符c是否存在与之方向相反的字符。例如:“[”存在与之方向相反的“]”,结果为:true。

20.staticbooleanisSpaceChar(charch):判断字符ch是否为Unicode中的空格。

21.staticbooleanisUpperCase(charch):判断字符ch是否为大写字母。

22.staticbooleanisWhitespace(charch):判断字符ch是否为Java定义中的空字符。

其中包括:

charc1='\u0009';//水平列表符

charc2='\u000A';//换行

charc3='\u000B';//垂直列表符

charc4='\u000C';//换页

charc5='\u000D';//回车

charc6='\u001C';//文件分隔符

charc7='\u001D';//组分隔符

charc8='\u001E';//记录分隔符

charc9='\u001F';//单元分隔符

23.staticchartoLowerCase(charch):转换ch是否为小写。

24.StringtoString():将当前Character对象转换成字符串。

25.staticStringtoString(charc):此为类方法,将c转换成字符串。

26.staticchartoUpperCase(charch):转换ch是否为大写。

System.out.println("Character.toUpperCase('q'):"+Character.toUpperCase('q'));

System.out.println("Character.toLowerCaseCase('B'):"+Character.toLowerCase('B'));

结果为:

Character.toUpperCase('q'):Q

Character.toLowerCaseCase('B'):b

5.string类的使用方法

String:字符串类型

此帖参考了maxlyy朋友的帖子,在这里特别感谢。

1、构造函数。

String():构造一个空字符串对象。

String(byte[]bytes):通过byte数组构造字符串对象。

String(byte[]bytes,intoffset,intlength):通过byte数组,从offset开始,总共length长的字节构造字符串对象。

String(char[]value):通过char数组构造字符串对象。

String(char[]value,intoffset,intcount):通过char数组,从offset开始,总共length长的字节构造字符串对象。

String(Stringoriginal):构造一个original的副本。既,拷贝一个original。

String(StringBufferbuffer):通过StringBuffer数组构造字符串对象;

byte[]b={'a','b','c','d','e','f','g','h','i','j'};

char[]c={'0','1','2','3','4','5','6','7','8','9'};

Stringsb=newString(b);

Stringsb_sub=newString(b,3,2);

Stringsc=newString(c);

Stringsc_sub=newString(c,3,2);

Stringsb_copy=newString(sb);

System.out.println("sb:"+sb);

System.out.println("sb_sub:"+sb_sub);

System.out.println("sc:"+sc);

System.out.println("sc_sub:"+sc_sub);

System.out.println("sb_copy:"+sb_copy);

结果为:

sb:abcdefghij

sb_sub:de

sc:0123456789

sc_sub:34

sb_copy:abcdefghij

2、方法。

说明:

1.所有方法均为public;

2.书写格式:[修饰符]<返回类型><方法名([参数列表])>

如:

staticintparseInt(Strings)表示:此方法(parseInt)为类方法(static),返回类型为(int),方法所需参数为String类型。

1.charcharAt(intindex):取字符串中的某一个字符,其中的参数index指的是字符串中序数。字符串的序数从0开始到length()-1。

Strings=newString("abcdefghijklmnopqrstuvwxyz");

System.out.println("s.charAt(5):"+s.charAt(5));

结果为:s.charAt(5):f

2.intcompareTo(StringanotherString):当前String对象与anotherString比较。相等关系返回0;不相等时,从两个字符串第0个字符开始比较,返回第一个不相等的字符差,另一种情况,较长字符串的前面部分恰巧是较短的字符串,返回它们的长度差。

3.intcompareTo(Objecto):如果o是String对象,和2的功能一样;否则抛出ClassCastException异常。

Strings1=newString("abcdefghijklmn");

Strings2=newString("abcdefghij");

Strings3=newString("abcdefghijalmn");

System.out.println("https://www.360docs.net/doc/d117871512.html,pareTo(s2):"+https://www.360docs.net/doc/d117871512.html,pareTo(s2));//返回长度差

System.out.println("https://www.360docs.net/doc/d117871512.html,pareTo(s3):"+https://www.360docs.net/doc/d117871512.html,pareTo(s3));//返回'k'-'a'的差

结果为:

https://www.360docs.net/doc/d117871512.html,pareTo(s2):4

https://www.360docs.net/doc/d117871512.html,pareTo(s3):10

4.Stringconcat(Stringstr):将该String对象与str连接在一起。

5.booleancontentEquals(StringBuffersb):将该String对象与StringBuffer对象sb进行比较。

6.staticStringcopyValueOf(char[]data):

7.staticStringcopyValueOf(char[]data,intoffset,intcount):这两个方法将char数组转换成String,与其中一个构造函数类似。

8.booleanendsWith(Stringsuffix):该String对象是否以suffix结尾。

Strings1=newString("abcdefghij");

Strings2=newString("ghij");

System.out.println("s1.endsWith(s2):"+s1.endsWith(s2));

结果为:s1.endsWith(s2):true

9.booleanequals(ObjectanObject):当anObject不为空并且与当前String对象一样,返回true;否则,返回false。

10.byte[]getBytes():将该String对象转换成byte数组。

11.voidgetChars(intsrcBegin,intsrcEnd,char[]dst,intdstBegin):该方法将字符串拷贝到字符数组中。其中,srcBegin为拷贝的起始位置、srcEnd为拷贝的结束位置、字符串数值dst为目标字符数组、dstBegin为目标字符数组的拷贝起始位置。

char[]s1={'I','','l','o','v','e','','h','e','r','!'};//s1=Iloveher!

Strings2=newString("you!");

s2.getChars(0,3,s1,7);//s1=Iloveyou!

System.out.println(s1);

结果为:Iloveyou!

12.inthashCode():返回当前字符的哈希表码。

13.intindexOf(intch):只找第一个匹配字符位置。

14.intindexOf(intch,intfromIndex):从fromIndex开始找第一个匹配字符位置。

15.intindexOf(Stringstr):只找第一个匹配字符串位置。

16.intindexOf(Stringstr,intfromIndex):从fromIndex开始找第一个匹配字符串位置。

Strings=newString("writeonce,runanywhere!");

Stringss=newString("run");

System.out.println("s.indexOf('r'):"+s.indexOf('r'));

System.out.println("s.indexOf('r',2):"+s.indexOf('r',2));

System.out.println("s.indexOf(ss):"+s.indexOf(ss));

结果为:

s.indexOf('r'):1

s.indexOf('r',2):12

s.indexOf(ss):12

17.intlastIndexOf(intch)

18.intlastIndexOf(intch,intfromIndex)

19.intlastIndexOf(Stringstr)

20.intlastIndexOf(Stringstr,intfromIndex)以上四个方法与13、14、15、16类似,不同的是:找最后一个匹配的内容。

21.intlength():返回当前字符串长度。

22.Stringreplace(charoldChar,charnewChar):将字符号串中第一个oldChar替换成newChar。

23.booleanstartsWith(Stringprefix):该String对象是否以prefix开始。

24.booleanstartsWith(Stringprefix,inttoffset):该String对象从toffset位置算起,是否以prefix开始。

Strings=newString("writeonce,runanywhere!");

Stringss=newString("write");

Stringsss=newString("once");

System.out.println("s.startsWith(ss):"+s.startsWith(ss));

System.out.println("s.startsWith(sss,6):"+s.startsWith(sss,6));

结果为:

s.startsWith(ss):true

s.startsWith(sss,6):true

25.Stringsubstring(intbeginIndex):取从beginIndex位置开始到结束的子字符串。

26.Stringsubstring(intbeginIndex,intendIndex):取从beginIndex位置开始到endIndex位置的子字符串。

27.char[]toCharArray():将该String对象转换成char数组。

28.StringtoLowerCase():将字符串转换成小写。

29.StringtoUpperCase():将字符串转换成大写。

Strings=newString("https://www.360docs.net/doc/d117871512.html,ng.ClassString");

System.out.println("s.toUpperCase():"+s.toUpperCase());

System.out.println("s.toLowerCase():"+s.toLowerCase());

结果为:

s.toUpperCase():https://www.360docs.net/doc/d117871512.html,NG.CLASSSTRING

s.toLowerCase():https://www.360docs.net/doc/d117871512.html,ng.classstring

30.staticStringvalueOf(booleanb)

31.staticStringvalueOf(charc)

32.staticStringvalueOf(char[]data)

33.staticStringvalueOf(char[]data,intoffset,intcount)

34.staticStringvalueOf(doubled)

35.staticStringvalueOf(floatf)

36.staticStringvalueOf(inti)

37.staticStringvalueOf(longl)

38.staticStringvalueOf(Objectobj)

以上方法用于将各种不同类型转换成Java字符型。这些都是类方法。

6.StringTokenizer类的使用方法

StringTokenizer:字符串分隔解析类型

属于:java.util包。

1、构造函数。

1.StringTokenizer(Stringstr):构造一个用来解析str的StringTokenizer对象。java默认的分隔符是“空格”、“制表符(…\t?)”、“换行符(…\n?)”、“回车符(…\r?)”。

2.StringTokenizer(Stringstr,Stringdelim):构造一个用来解析str的StringTokenizer对象,并提供一个指定的分隔符。

3.StringTokenizer(Stringstr,Stringdelim,booleanreturnDelims):构造一个用来解析str的StringTokenizer 对象,并提供一个指定的分隔符,同时,指定是否返回分隔符。

2、方法。

说明:

1.所有方法均为public;

2.书写格式:[修饰符]<返回类型><方法名([参数列表])>

如:

staticintparseInt(Strings)表示:此方法(parseInt)为类方法(static),返回类型为(int),方法所需参数为String类型。

1.intcountTokens():返回nextToken方法被调用的次数。如果采用构造函数1和2,返回的就是分隔符数量(例2)。

2.booleanhasMoreTokens():返回是否还有分隔符。

3.booleanhasMoreElements():结果同2。

4.StringnextToken():返回从当前位置到下一个分隔符的字符串。

5.ObjectnextElement():结果同4。

6.StringnextToken(Stringdelim):与4类似,以指定的分隔符返回结果。

例子:

Strings=newString("TheJavaplatformistheidealplatformfornetworkcomputing");

StringTokenizerst=newStringTokenizer(s);

System.out.println("TokenTotal:"+st.countTokens());

while(st.hasMoreElements()){

System.out.println(st.nextToken());

}

结果为:

TokenTotal:10

The

Java

platform

is

the

ideal

platform

for

network

computing

例2:

Strings=newString("The=Java=platform=is=the=ideal=platform=for=network=computing"); StringTokenizerst=newStringTokenizer(s,"=",true);

System.out.println("TokenTotal:"+st.countTokens());

while(st.hasMoreElements()){

System.out.println(st.nextToken());

}

结果为:

TokenTotal:19

The

=

Java

=

platform

=

is

=

the

=

ideal

=

platform

=

for

=

network

=

computing

8.StringBuffer类的使用方法

StringBuffer:StringBuffer类型

描述:在实际应用中,经常回遇到对字符串进行动态修改。这时候,String类的功能受到限制,而StringB

uffer类可以完成字符串的动态添加、插入和替换等操作。

1、构造函数。

StringBuffer():构造一个没有任何字符的StringBuffer类。

StringBuffer(intlength)::构造一个没有任何字符的StringBuffer类,并且,其长度为length。StringBuffer(Stringstr):以str为初始值构造一个StringBuffer类。

2、方法。

说明:

1.所有方法均为public;

2.书写格式:[修饰符]<返回类型><方法名([参数列表])>

如:

staticintparseInt(Strings)表示:此方法(parseInt)为类方法(static),返回类型为(int),方法所需参数为String类型。

1.StringBufferappend(booleanb)

2.StringBufferappend(charc)

3.StringBufferappend(char[]str)

4.StringBufferappend(char[]str,intoffset,intlen)

5.StringBufferappend(doubled)

6.StringBufferappend(floatf)

7.StringBufferappend(inti)

8.StringBufferappend(longl)

9.StringBufferappend(Objectobj)

10.StringBufferappend(Stringstr)

11.StringBufferappend(StringBuffersb)

以上的方法都是向字符串缓冲区“追加”元素,但是,这个“元素”参数可以是布尔量、字符、字符数组、双精度数、浮点数、整型数、长整型数对象类型的字符串、字符串和StringBuffer类等。如果添加的字符超出了字符串缓冲区的长度,Java将自动进行扩充。

Stringquestion=newString("1+1=");

intanswer=3;

booleanresult=(1+1==3);

StringBuffersb=newStringBuffer();

sb.append(question);

sb.append(answer);

sb.append('\t');

sb.append(result);

System.out.println(sb);

结果为:

1+1=3false

12.intcapacity():返回当前StringBuffer对象(字符串缓冲区)的总空间,而非字符号串的长度。

13.charcharAt(intindex):在当前StringBuffer对象中取索引号为index的字符。第一个字符的索引为“0”

14.StringBufferdelete(intstart,intend):删除当前StringBuffer对象中以索引号start开始,到end结束的子串。

15.StringBufferdeleteCharAt(intindex):删除当前StringBuffer对象中索引号为index的字符。

16.voidensureCapacity(intminimumCapacity):重新设置字符号串缓冲区的总空间。如果minimumCapaci ty大于当前的总空间,则新的空间被设置:一种结果是minimumCapacity;另一种结果是{“老空间”乘2加2}。

StringBuffersb1=newStringBuffer(5);

StringBuffersb2=newStringBuffer(5);

sb1.ensureCapacity(6);

sb2.ensureCapacity(100);

System.out.println("sb1.Capacity:"+sb1.capacity());

System.out.println("sb2.Capacity:"+sb2.capacity());

结果为:

sb1.Capacity:12

sb2.Capacity:100

17.voidgetChars(intsrcBegin,intsrcEnd,char[]dst,intdstBegin):从当前StringBuffer对象的索引号srcBegi n开始,到srcEnd结束的子串,赋值到字符数组dst中,并且从dst的索引号dstBegin开始。

StringBuffersb=newStringBuffer("Iloveher!");

char[]i={'I','','l','o','v','e','','y','o','u'};

sb.getChars(7,10,i,7);

System.out.println("sb:"+sb);

结果为:sb:Iloveher!

18.intindexOf(Stringstr):返回当前StringBuffer对象中,第一个满足str子串的位置。

19.intindexOf(Stringstr,intfromIndex):从当前StringBuffer对象的fromIndex开始查找,返回第一个满足s tr子串的位置。

20.StringBufferinsert(intoffset,booleanb)

21.StringBufferinsert(intoffset,charc)

22.StringBufferinsert(intoffset,char[]str)

23.StringBufferinsert(intindex,char[]str,intoffset,intlen)

24.StringBufferinsert(intoffset,doubled)

25.StringBufferinsert(intoffset,floatf)

26.StringBufferinsert(intoffset,inti)

27.StringBufferinsert(intoffset,longl)

28.StringBufferinsert(intoffset,Objectobj)

29.StringBufferinsert(intoffset,Stringstr)

以上的方法都是在当前StringBuffer对象中插入一个元素,在索引号offset处插入相应的值。

30.intlastIndexOf(Stringstr):返回当前StringBuffer对象中,最后一个满足str子串的位置。

31.intlastIndexOf(Stringstr,intfromIndex):从当前StringBuffer对象的fromIndex开始查找,返回最后一个满足str子串的位置。

32.intlength():返回当前StringBuffer对象(字符缓冲区)中,字符串的长度。注意:此方法与capacity()不同。

33.StringBufferreplace(intstart,intend,Stringstr):替换当前StringBuffer对象的字符串。从start开始,到e nd结束的位置替换成str。

34.StringBufferreverse():将字符串翻转。

StringBuffersb=newStringBuffer("0123456789");

System.out.println("sb.reverse():"+sb.reverse());

结果为:sb.reverse():9876543210

35.voidsetCharAt(intindex,charch):设置索引号index的字符为ch。

36.voidsetLength(intnewLength):重新设置字符串缓冲区中字符串的长度,如果newLength小于当前的字符串长度,将截去多余的字符。

StringBuffersb=newStringBuffer("0123456789");

sb.setLength(5);

System.out.println("sb:"+sb);

结果为:sb:01234

37.Stringsubstring(intstart):取当前StringBuffer对象中,从start开始到结尾的子串。

38.Stringsubstring(intstart,intend):取当前StringBuffer对象中,从start开始到end的子串。

39.StringtoString():将当前StringBuffer对象转换成String对象。

8.Random类的使用方法。

属于包:java.util.Random

Random:随机类型

1、属性。

无。

2、构造函数。

Random():创建一个新的随机数发生器。

Random(longseed):用一个种子(长整型)创建一个随机数发生器。

3、方法。

说明:

1.所有方法均为public;

2.书写格式:[修饰符]<返回类型><方法名([参数列表])>

如:

staticintparseInt(Strings)表示:此方法(parseInt)为类方法(static),返回类型为(int),方法所需参数为String类型。

javamath类常用方法

例如求平方根的(n),求a的b次方(a, b),求绝对值(n)等很多。下面是一些演示。publicclassMathTest { publicstaticvoidmain(String[]args) { intn=16; ? 3)); ? ? } } publicclassMathDemo{ publicstaticvoidmain(Stringargs[]){ /** *abs求绝对值 */ 的时候会取偶数 */ // // // // // // // // // // /** *round四舍五入,float时返回int值,double时返回long值 */ //10 //11 //11 //11 //-10 //-11 //-11 //-10 } }

函数(方法) 描述 IEEEremainder(double,double) 按照IEEE754标准的规定,对两个参数进行余数运算。 abs(inta) 返回int值的绝对值 abs(longa) 返回long值的绝对值 abs(floata) 返回float值的绝对值 abs(doublea) 返回double值的绝对值 acos(doublea) 返回角的反余弦,范围在到pi之间 asin(doublea) 返回角的反正弦,范围在-pi/2到pi/2之间 atan(doublea) 返回角的反正切,范围在-pi/2到pi/2之间 atan2(doublea,doubleb) 将矩形坐标(x,y)转换成极坐标(r,theta) ceil(doublea) 返回最小的(最接近负无穷大)double值,该值大于或等于参数,并且等于某个整数cos(double) 返回角的三角余弦 exp(doublea) 返回欧拉数e的double次幂的值 floor(doublea) 返回最大的(最接近正无穷大)double值,该值小于或等于参数,并且等于某个整数log(doublea) 返回(底数是e)double值的自然对数 max(inta,intb) 返回两个int值中较大的一个 max(longa,longb) 返回两个long值中较大的一个 max(floata,floatb) 返回两个float值中较大的一个 max(doublea,doubleb) 返回两个double值中较大的一个 min(inta,intb) 返回两个int值中较小的一个 min(longa,longb) 返回两个long值中较小的一个 min(floata,floatb)

实验5 JAVA常用类

山西大学计算机与信息技术学院 实验报告 姓名学号专业班级 课程名称 Java实验实验日期成绩指导教师批改日期 实验5 JAVA常用类实验名称 一.实验目的: (1)掌握常用的String,StringBuffer(StringBuilder)类的构造方法的使用;(2)掌握字符串的比较方法,尤其equals方法和==比较的区别; (3)掌握String类常用方法的使用; (4)掌握字符串与字符数组和byte数组之间的转换方法; (5)Date,Math,PrintWriter,Scanner类的常用方法。 二.实验内容 1.二进制数转换为十六进制数(此程序参考例题249页9. 2.13) 程序源代码 import java.util.*; public class BinToHexConversion{ //二进制转化为十六进制的方法 public static String binToHex(String bin){ int temp; //二进制转化为十六进制的位数 if(bin.length()%4==0) temp = bin.length()/4; else temp = bin.length()/4 + 1; char []hex = new char[temp]; //十六进制数的字符形式 int []hexDec = new int[temp];//十六进制数的十进制数形式 int j = 0; for(int i=0;i=0&&dec<10) return (char)('0'+dec-0); else if(dec>=10&&dec<=15) return (char)('A'+dec-10); else return '@'; }

JAVA中常用的集合类型

JAVA常用的高级数据类型——集合类型 一、JAVA语言中的集合类型主要有三种形式:Set(集)、List(列表)、Map(映射),每种类型的集合都包括三部分:接口、实现和算法。 a)集合接口实现集合的操作和集合的具体功能实现细节的相互分离—— Set接口、List接口、Map接口 b)集合的具体功能实现类实质上是各种可重用的数据结构的具体表示 List接口的实现类有ArrayList、LinkedList、Stack和Vector等 集合类,Vector 类提供了实现可增长数组的功能,随着更多元素加 入其中,数组变的更大。在删除一些元素之后,数组变小。 Set接口的实现类有HashSet、LinkedHashSet和TreeSet等集合类 Map接口的实现类有HashMap、Hashtable、LinkedHashMap、Properties和TreeMap等集合类。 c)集合的算法指可以对实现集合接口的各个集合的功能实现类提供如排 序、查找、交换和置换等方面的功能实现。 二、List接口 1.List接口代表有序的集合,可以对List接口代表的有序集合中每个元素 的插入位置进行精确地控制,并利用元素的整数索引(代表元素在集合中的位置)访问元素中的各个成员,List接口代表的集合是允许出现重复元素的。 2.List接口主要成员方法: 1)void add(int index,E element)在列表指定位置插入指定元素 2)E get(int index) 返回结合中指定位置的元素 3)E remove(int index) 移除集合中指定位置的元素 4)E set(int index,E elment) 用指定元素替换集合中指定位置的元素 5)boolean add(E o) 向列表的尾部追加指定的元素 6)boolean contains(Object o) 如果列表包含指定的元素,则返回true。 7)boolean isEmpty() 如果列表不包含元素,则返回 true。 8)int size() 返回列表中的元素数 9)Iterator iterator()返回以正确顺序在列表的元素上进行迭代的迭代器。 3.List的实现类 List在数据结构中分别表现为数组(ArrayList)、向量(Vector)、链表(LinkedList)、堆栈(Stack)和队列等形式。 Vector集合和ArrayList集合都是采用数组形式来保存对象,区别在于ArrayList集合本身不具有线程同步的特性,不能用在多线程的环境下,可以使用ArrayList集合能够节省由于同步而产生的系统性能的开销。而Vector集合实现了对线程同步的支持,因此在多线程并发访问的应用环境下,该集合本身能够保证自身具有线程安全性。在多线程的并发访问中,可以将Vector集合的对象实例设计为类中的成员属性,而应该将ArrayList 集合的对象实例设计为局部对象。 public class UserInfo{ List oneVector=new Vector(); public void execute(){

JAVA中常用类的常用方法

JAVA中常用类的常用方法 一、类 1、clone()方法 创建并返回此对象的一个副本。要进行“ 克隆” 的对象所属的类必须实现. Cloneable接口。 2、equals(Object obj)方法 功能:比较引用类型数据的等价性。 等价标准:引用类型比较引用,基本类型比较值。 存在特例:对File、String、Date及封装类等类型来说,是比较类型及对象的内 容而不考虑引用的是否为同一实例。 3、finalize()方法 当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方法。 4、hashCode()方法 返回该对象的哈希码值。 5、notify()方法 唤醒在此对象监视器上等待的单个线程。 6、notifyAll()方法 唤醒在此对象监视器上等待的所有线程。 7、toString()方法 返回该对象的字符串表示。在进行String与其它类型数据的连接操作时,自动调用toString()方法。可以根据需要重写toString()方法。 8、wait()方法 在其他线程调用此对象的 notify() 方法或 notifyAll() 方法前,导致当前线程等待。 二、字符串相关类 String类 charAt(int index) 返回指定索引处的 char 值。 compareTo(String anotherString) 按字典顺序比较两个字符串。 compareToIgnoreCase(String str) 按字典顺序比较两个字符串,不考虑大小写。 concat(String str) 将指定字符串连接到此字符串的结尾。 endsWith(String suffix) 测试此字符串是否以指定的后缀结束。 equals(Object anObject) 将此字符串与指定的对象比较。 equalsIgnoreCase(String anotherString) 将此 String 与另一个 String 比 较,不考虑大小写。 indexOf(int ch) 返回指定字符在此字符串中第一次出现处的索引。 indexOf(String str) 返回第一次出现的指定子字符串在此字符串中的索引。 lastIndexOf(int ch) 返回指定字符在此字符串中最后一次出现处的索引。 length() 返回此字符串的长度。 replace(char oldChar, char newChar)

java集合类总结

1.本讲内容:集合collection (数组和集合90%功能相似,但是最大的区别是,数组在初始化的时候必须确定大小,而集合不用,而且集合是一堆的类,使用起来非常方便。) 讲集合collection之前,我们先分清三个概念: 1colection 集合,可用来存储任何对象的一种数据结构(容器)。 2Collection 集合接口,指的是,是Set、List 和Queue 接口的超类接口 3Collections 集合工具类,指的是类。 SCJP考试要求了解的接口有:Collection , Set , SortedSet , List , Map , SortedMap , Queue , NavigableSet , NavigableMap, 还有一个Iterator 接口也是必须了解的。 SCJP考试要求了解的类有:HashMap , Hashtable ,TreeMap , LinkedHashMap , HashSet , LinkedHashSet ,TreeSet , ArrayList , Vector , LinkedList , PriorityQueuee , Collections , Arrays 下面给出一个集合之间的关系图: 上图中加粗线的ArrayList 和HashMap 是我们重点讲解的对象。下面这张图看起来层级结构更清晰些。 我们这里说的集合指的是小写的collection,集合有4种基本形式,其中前三种的父接口是Collection。 4List 关注事物的索引列表 5Set 关注事物的唯一性 6Queue 关注事物被处理时的顺序 7Map 关注事物的映射和键值的唯一性 一、Collection 接口 Collection接口是Set 、List 和Queue 接口的父接口,提供了多数集合常用的方法声明,包括add()、remove()、contains() 、size() 、iterator() 等。 add(E e) 将指定对象添加到集合中 remove(Object o) 将指定的对象从集合中移除,移除成功返回true,不成功返回false contains(Object o) 查看该集合中是否包含指定的对象,包含返回true,不包含返回flase size() 返回集合中存放的对象的个数。返回值为int clear() 移除该集合中的所有对象,清空该集合。 iterator() 返回一个包含所有对象的iterator对象,用来循环遍历 toArray() 返回一个包含所有对象的数组,类型是Object toArray(T[] t) 返回一个包含所有对象的指定类型的数组 我们在这里只举一个把集合转成数组的例子,因为Collection本身是个接口所以,我们用它的实现类ArrayList做这个例子:例子1: package edu.xjfu;

JAVA中常用类的常用方法

JAVA屮常用类的常用方法 一.java?丨ang.Object 类 1、clone()方法 创建丼返M此对象的一个副木。要进行“克隆”的对象所属的类必须实现https://www.360docs.net/doc/d117871512.html,ng. Cloneable 接口。 2、equals(Objectobj)方法 0 功能:比较引用类型数据的等价性。 0 等价标准.?引用类型比较引用,基木类型比较值。 0 存在特例.?对File、String、Date及封装类等类型来说,是比较类型及对象的内稃而+ 考虑引用的是否为同一实例。 3、finalize〇方法 当垃圾丨"丨收器确定>(、存在对该对象的更多引用时,由对象的垃圾丨"丨收器调用此方法。 4、hashCode〇方法返 回该对象的哈希码值。 5、notify〇方法 唤醒在此对象监视器上等待的中?个线祝。 6、notifyAII〇方法 唤醒在此对象监视器上等待的所有线程= 7、toString()方法 返W该对象的字符串表示。在进行String与其它类型数据的连接操作时,&动调用tostringo 方法。可以根据耑要重写toStringO方法。 8、wait()方法 在其他线程调用此对象的n〇tify()方法或notifyAIIO方法前,异致当前线程等待。 二、字符串相关类 I String 类 charAt(int index)返回指定索引处的char值。compareTo{String anotherString)按字

典顺序比较两个字符串。compareTolgnoreCase(Stringstr)按字典顺序比较两个字 符串,不考虑人小写。concat(String str)将指定字符串连接到此字符串的结尾。 endsWith(String suffix)测试此字符串是否以指定的〗?缀结束。equals{Object anObject)将此字符串与指定的对象比较。 equalslgnoreCase(String anotherString)将此String 与另一个String 比较,考虑人小'与’。indexOf(int ch)返H指定字符在此字符串屮第一次出现处的索引。 indexOf(String str)返回第一次出现的指定子字符串在此字符串屮的索引, lastlndexOf(intch)返回指定字符在此字符串中最后??次出现处的索引。 length()返|n丨此字符串的长度。 replace(char oldChar, char newChar) 返回一个新的字符串,它是通过用newChar替换此字符串中出现的所有oldChar得到的。 split(String regex)根据给定正则表达式的匹配拆分此字符串。startsWith{String prefix)测试此字符 串是否以指定的前缀开始。substring(int beginlndex) 返回一个新的字符串,它是此字符串的一个子字符串。该子字符串始于指定索引处的字符,一直到此字符串末尾。 substring(int beginlndex, int endlndex) 返回一个新字符串,它是此字符串的一个子字符串。该子字符串从指定的beginlndex 处开始,一直到索引endlndex-1处的字符。 t〇CharArray()将此字符串转换为一个新的字符数组。

史上最全Java基础知识点归纳

史上最全Java基础知识点归纳 写这篇文章的目的是想总结一下自己这么多年来使用Java的一些心得体会,主要是和一些Java基础知识点相关的,所以也希望能分享给刚刚入门的Java 程序员和打算入Java开发这个行当的准新手们,希望可以给大家一些经验,能让大家更好学习和使用Java。 这次介绍的主要内容是和J2SE相关的部分,另外,会在以后再介绍些J2EE 相关的、和Java中各个框架相关的内容。 经过这么多年的Java开发,以及结合平时面试Java开发者的一些经验,我觉得对于J2SE方面主要就是要掌握以下的一些内容。 1.JVM相关(包括了各个版本的特性) 对于刚刚接触Java的人来说,JVM相关的知识不一定需要理解很深,对此里面的概念有一些简单的了解即可。不过对于一个有着3年以上Java经验的资

深开发者来说,不会JVM几乎是不可接受的。 JVM作为Java运行的基础,很难相信对于JVM一点都不了解的人可以把Java语言吃得很透。我在面试有超过3年Java经验的开发者的时候,JVM几乎就是一个必问的问题了。当然JVM不是唯一决定技术能力好坏的面试问题,但是可以佐证Java开发能力的高低。 在JVM这个大类中,我认为需要掌握的知识有: JVM内存模型和结构 GC原理,性能调优 调优:Thread Dump,分析内存结构 class二进制字节码结构,class loader体系,class加载过程,实例创建过程 方法执行过程 Java各个大版本更新提供的新特性(需要简单了解) 2.Java的运行(基础必备) 这条可能出看很简单,Java程序的运行谁不会呢?不过很多时候,我们只是单纯通过IDE去执行Java程序,底层IDE又是如何执行Java程序呢?很多人并不了解。

JAVA中常用类的常用方法

JAVA中常用类的常用方法 一、https://www.360docs.net/doc/d117871512.html,ng.Object类 1、clone()方法 创建并返回此对象的一个副本。要进行“克隆”的对象所属的类必须实现https://www.360docs.net/doc/d117871512.html,ng. Cloneable接口。 2、equals(Object obj)方法 ?功能:比较引用类型数据的等价性。 ?等价标准:引用类型比较引用,基本类型比较值。 ?存在特例:对、Date及封装类等类型来说,是比较类型及对象的内容而不考虑引用的是否为同一实例。 3、finalize()方法 当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方法。 4、hashCode()方法返回该对象的哈希码值。 5、notify()方法唤醒在此对象监视器上等待的单个线程。 6、notifyAll()方法唤醒在此对象监视器上等待的所有线程。 7、toString()方法 返回该对象的字符串表示。在进行String与其它类型数据的连接操作时,自动调用toString()方法。可以根据需要重写toString()方法。 8、wait()方法 在其他线程调用此对象的notify() 方法或notifyAll() 方法前,导致当前线程等待。 二、字符串相关类 l String类 charAt(int index) 返回指定索引处的char 值。 compareTo(String anotherString) 按字典顺序比较两个字符串。 compareToIgnoreCase(String str) 按字典顺序比较两个字符串,不考虑大小写。 concat(String str) 将指定字符串连接到此字符串的结尾。 endsWith(String suffix) 测试此字符串是否以指定的后缀结束。 equals(Object anObject) 将此字符串与指定的对象比较。 equalsIgnoreCase(String anotherString) 将此String 与另一个String 比较,不考虑大小写。indexOf(int ch) 返回指定字符在此字符串中第一次出现处的索引。 indexOf(String str) 返回第一次出现的指定子字符串在此字符串中的索引。 lastIndexOf(int ch) 返回指定字符在此字符串中最后一次出现处的索引。 length() 返回此字符串的长度。 replace(char oldChar, char newChar) 返回一个新的字符串,它是通过用newChar 替换此字符串中出现的所有oldChar 得到的。split(String regex) 根据给定正则表达式的匹配拆分此字符串。 startsWith(String prefix) 测试此字符串是否以指定的前缀开始。 substring(int beginIndex) 返回一个新的字符串,它是此字符串的一个子字符串。该子字符串始于指定索引处的字符,一直到此字符串末尾。 substring(int beginIndex, int endIndex) 返回一个新字符串,它是此字符串的一个子字符串。该子字符串从指定的beginIndex 处开

Java基础入门教程(适合所有初学者)

第1章 Java语言概述与面向对象思想 1 1.1 Java语言的发展 1 1.1.1 Java语言的产生 1 1.1.2 Java语言的发展 1 1.2 Java语言的特点 2 1.3 面向对象与面向过程的差异 3 1.3.1 面向过程思想回顾 4 1.3.2 面向对象思想介绍 4 1.4 面向对象程序设计中的主要概念和特征 4 1.4.1 主要概念 5 1.4.2 主要特征 5 *1.5 Java与C++的差异 5 1.6本章小结5 习题 5 第2章 Java语言开发环境 6 2.1 JDK 6 2.1.1 JDK的简介6 2.1.2 JDK的构成6 2.1.3 JDK的使用6 2.2 IDE 8 2.2.1 IDE简介8 2.2.2 JBuilder 9 2.2.3 Eclipse 9 2.2.4 相关资源9 2.3 Project管理9 2.3.1 Project的含义9 2.3.2 可行的Project组织模式9 2.3.3 主要开发工具的Project目录10 2.4 本章小结10 习题10 第1章 Java语言概述与面向对象思想 1.1 Java语言的发展 1.1.1 Java语言的产生以介绍面向对象编程的基本概念、基本理论为重点,结合Java语言的语法规则、编程特点和设计思想、强调容易发生错误和编程应注意的地方,使学生能对Java 技术有一个总体了解,通过本课程学习,使学生掌握Java语言的基础知识,理解和掌握面向对象程序设计的基本思想,熟练地使用Java语言进行程序的编写、编译以及调试工作 上世纪90年代初期,Sun公司在研究一种适用于未来的智能设备的编程语言,该语言要具有一些新的特性,以避免C++的一些不足。 该语言起初命名为Oak,来源于语言作者Gosling办公室窗外的一棵橡树(Oak)。后来在注册时候遇到了冲突,于是就从手中的热咖啡联想到了印度尼西亚一个盛产咖啡的岛屿,中文名叫爪哇,Java语言得名于此。 随着Internet的迅速发展,Web应用日益广泛,Java语言也得到了迅速发展。1994年,Gosling

Java中的集合类

Java中的集合类 (Collection framework)我们在前面学习过java数组,java数组的程度是固定的,在同一个数组中只能存放相同的类型数据。数组可以存放基本类型的数据,也可以存入对象引用的数据。 在创建数组时,必须明确指定数组的长度,数组一旦创建,其长度就不能改变,在许多应用的场合,一组数据的数目不是固定的,比如一个单位的员工数目是变化的,有老的员工跳槽,也有新的员工进来。 为了使程序方便地存储和操纵数目不固定的一组数据,JDK中提供了java集合类,所有java集合类都位于java.util包中,与java数组不同,java集合类不能存放基本数据类型数据,而只能存放对象的引用。 Java集合类分为三种 Set(集合):集合中对象不按特定的方式排序。并且没有重复对象,但它有些实现类中的对象按特定方式排序。--无序,不能重复 List(列表):集合中的对象按照检索位置排序,可以有重复对象,允许按照对象在集中的索引位置检索对象,List和数组有些相似。--有序,可以重复 Map(映射):集合中的每一个元素包含一对键对象和值对象,集合中没有重复的键对象,值对象可以重复,它的有些实现类能对集合中的键对象进行排序。 Java的主要集合类的框架图 Collection和Iterator接口 在Collection接口中声明了适用于java集合(只包括Set和List)通用方法。 Collection接口的方法 方法描述

boolean add(Object o) 向集合中加入一个对象的引用 void clear( ) 删除集合中所有对象,即不再对持有对象的引用boolean contains(Object o) 判断在集合中是否含有特定对象的引用 boolean isEmpty() 判断集合是否为空 Iterator iterator( ) 返回一个Iterator对象,可用它来遍历集合中的元素boolean remove(Object o) 从集合中删除一个对象的引用 int size( ) 返回集合中元素的数目 Object [ ] toArray() 返回一个数组,该数组包含集合中的所有元素 Set接口和List即可都继承了Collection接口,而Map接口没有继承Collection接口,因此可以对Set对象和List对象调用以上方法,但是不能对Map对象调用以上方法。Collection接口的iterator()和toArray()方法多用于获得集合中的所有元素,前者返回一个Iterator对象,后者返回一个包含集合中所有元素的数组。 Iterator隐藏底层集合的数据结构,向客户程序提供了遍历各种类型的集合的统一接口。Iterator接口中声明了如下方法: ●hasNext():判断集合中的元素是否遍历完毕,如果没有,就返回true。 ●next():返回下一个元素 ●remove():从集合中删除上一个由next()方法返回的元素。 注意:如果集合中的元素没有排序,Iterator遍历集合中元素的顺序是任意的,并不一定与像集合中加入的元素的顺序一致。 Set(集) Set是最简单的一种集合,集合中的对象不按特定方式排序,并没有重复对象。Set接口主要有两个实现类:HashSet类还有一个子类LinkedHashSet类,它不仅实现了哈希算法,而且实现了链表数据结构,链表数据结构能提高插入核算出元素的性能。TreeSet类实现了SortedSet接口中,具有排序功能。 List(列表) List的主要特征使其元素已先行方式存储,集合中允许存放重复对象。List接口主要的实现类包括: ●ArrayList—ArrayList代表长度可变的数组。允许对元素进行快速的随机访问,但是向 ArrayList中插入与删除元素的速度较慢。 ●LinkedList—在实现中采用链表数据结构。对顺序访问进行了优化,向List中插入和 删除元素的速度较快,随机访问速度则相对较慢,随机访问是指检索位于特定索引位置元素。 Map(映射) Map(映射)是一种吧键对和值对象进行映射的集合。它的每一个元素都包含一对键对象和值对象,而之对象仍可以是Map类型。以此类推,这样就形成了多级映射。向Map集合中加入元素时,必须提供一对键对象和值对象,从Map集合上检索元素只要给出键对象,就会返回值对象。 实例1 CollectionAll.java

JavaMath类常用方法

例如求平方根的Math.sqrt(n),求a的b次方Math.pow(a, b),求绝对值Math.abs(n)等很多。下面是一些演示。 public class MathTest { public static void main(String[] args) { int n = 16; System.out.println(Math.sqrt(n)); System.out.println(Math.pow(2, 3)); System.out.println(Math.abs(-4)); System.out.println(Math.log10(100)); } } public class MathDemo { public static void main(String args[]){ /** * abs求绝对值 */ System.out.println(Math.abs(-10.4)); //10.4 System.out.println(Math.abs(10.1)); //10.1 /** * ceil天花板的意思,就是返回大的值,注意一些特殊值 */ System.out.println(Math.ceil(-10.1)); //-10.0 System.out.println(Math.ceil(10.7)); //11.0 System.out.println(Math.ceil(-0.7)); //-0.0 System.out.println(Math.ceil(0.0)); //0.0 System.out.println(Math.ceil(-0.0)); //-0.0 /** * floor地板的意思,就是返回小的值 */ System.out.println(Math.floor(-10.1)); //-11.0 System.out.println(Math.floor(10.7)); //10.0 System.out.println(Math.floor(-0.7)); //-1.0

JAVA技术--Java基础知识常见考试题JAVA技术.doc

一、单选题 1.对类:(B) public class Test( //...do something } 下面那个正确地定义了类Test的构造函数。 A)public void Test() () B)publicTest()(} C ) public static Test() (} D) publicTest(); 2.下面哪个函数是public void example()(...)的重载函数。(A) A)public void example( float f)(...) B)public int example() (...) C)public void example2()(...} D)public int example_overLoad ()(...) 3.下面的代码段中,执行之后i和j的值是_C_。 int i = 1; intj; j = i++; A)1, 1 B) 1,2 C) 2, 1 D) 2,2 4.以下for循环的执行次数是_B o for(int x=0,y=0;(y !=0)&&(x<4) ;x++); A)无限次B) 一次也不执行 C)执行4次D)执行3次 5.下面程序的输出结果是—C o public class People( String name; int id; public People( String str, int n )( name = str; id = n; } public String toString(){ return id + " :” + name; } public String print()(

Java中集合类用法总结

帮助 | 留言交? | 登录 首页我的图书馆主题阅读精彩目录精品文苑Tags 会员浏览好书推荐 以文找文 如何对文章标记,添加批注? Java 中集合?用法总结(转载) wade0564 收录于2010-07-08 阅读数:查看 收藏数:7 公众公开 原文来源 tags : java 集合类 欢迎浏览 wade0564 个人图书馆中收藏的文章,想收藏这篇好文章吗,赶快 吧,1分钟拥有自己的个人图书馆! 我也要收藏 举报 Java 中集合?用法总结 收藏 Collection ├List │├LinkedList │├ArrayList (异步,线程不安全,空间用完时自动增长原容量一半)│└Vector (同 步,线程安全,空间用完时自动增长原容量一倍)│ └Stack └Set ├HashSet └TreeSet Map ├Hashtable ├HashMap ├WeakHashMap └TreeMap Map 接口: | + -- WeakHashMap: 以弱键 实现的基于哈希表的 Map 。在 WeakHashMap 中,当某个键不再正常使用时,将自动移除其条 | 目。更精确地说,对于一个给定的键,其映射的存在并不阻止垃圾回收器对该键的丢弃,这就使该键成为 可终止的,被终 | 止,然后被回收。丢弃某个键时, 其条目从映射中有效地移除,因此,该类的行为与其他的 Map 实现有所不同。此实现 | 不是同步的。 | + -- TreeMap:该映射根据其键的自然顺序进行 排序,或?根据创建映射时提供的 Comparator 进行 排序,具体取决于使用的 | 构造方法。此实现不是同步的。 | + -- HashMap:基于哈希表的 Map 接?的实现。此实现提供所有可选的映射操作,并允许使用 null 值和 null 键。(除了 | 非同步和允许 使用 null 之外,HashMap 类与 Hashtable ?致相同。)此类不保证映射的顺序,特别是它不保证该顺 | 序恒久不变。此实现不是同步的。 | +-- SortedMap: 进一步提供关于键的总体排序 的 Map 。该映射是根据其键的自然顺序进 行排序的,或?根据通常在创建有 序映射时提供的 Comparator 进行排序。对有序映射的 collection 视图(由 entrySet 、keySet 和 values 方法返回 )进行迭代时,此顺序就会反映 出来。要采用此排序方式,还需要提供一些其他操作(此接?是 SortedSet 的对应映 射)。 Collection 接口: | 热点推荐 中国经典汤品——广东汤常用多音字汇总 如果你失恋。。。这些话...影响世界的100个管理定律汽车发动机?作过程和原理分析温家宝总理答中外记?问女人味,有多少男人可以读懂?珍稀的白头叶猴(组图)三鹿门事件之——中国,...国家公务员职务与级别当代古筝四美 付娜《渔...生活?秘方 真的很实用...哲理?品:守护梦想聚会时可以玩的?游戏依赖型人格障碍的表现和治疗经典妙语,十分精彩江边施救[贴图]李一男2003年在港湾...电脑速度慢的解决方法 ...重装系统后必须做的10件?事

java中常用的一些方法

java中常用的一些方法 字符串 1、获取字符串的长度 length() 2 、判断字符串的前缀或后缀与已知字符串是否相同 前缀startsWith(String s) 后缀endsWith(String s) 3、比较两个字符串 equals(String s) 4、把字符串转化为相应的数值 int型Integer.parseInt(字符串) long型Long.parseLong(字符串) float型Folat.valueOf(字符串).floatValue() double型Double.valueOf(字符串).doubleValue() 4、将数值转化为字符串 valueOf(数值) 5、字符串检索 indexOf(Srting s) 从头开始检索 indexOf(String s ,int startpoint) 从startpoint处开始检索 如果没有检索到,将返回-1 6、得到字符串的子字符串 substring(int startpoint) 从startpoint处开始获取 substring(int start,int end) 从start到end中间的字符 7、替换字符串中的字符,去掉字符串前后空格 replace(char old,char new) 用new替换old trim() 8、分析字符串 StringTokenizer(String s) 构造一个分析器,使用默认分隔字符(空格,换行,回车,Tab,进纸符)StringTokenizer(String s,String delim) delim是自己定义的分隔符

nextToken() 逐个获取字符串中的语言符号 boolean hasMoreTokens() 只要字符串还有语言符号将返回true,否则返回false countTokens() 得到一共有多少个语言符号 文本框和文本区 1、文本框 TextField() 构造文本框,一个字符长 TextField(int x) 构造文本框,x个字符长 TextField(String s) 构造文本框,显示s setText(String s) 设置文本为s getText() 获取文本 setEchoChar(char c) 设置显示字符为c setEditable(boolean) 设置文本框是否可以被修改 addActionListener() 添加监视器 removeActionListener() 移去监视器 2、文本区 TextArea() 构造文本区 TextArea(String s) 构造文本区,显示s TextArea(String s,int x,int y) 构造文本区,x行,y列,显示s TextArea(int x,int y) 构造文本区,x行,y列 TextArea(String s,int x,ing y,int scrollbar) scrollbar的值是: TextArea.SCROLLBARS_BOTH TextArea.SCROLLBARS_VERTICAL_ONLY TextArea.SCROLLBARS_HORIZONTAL_ONLY TextArea.SCROLLBARS_NONE setText(String s) 设置文本为s

Java集合体系结构分析与比较

Java集合体系结构分析与比较 1. Java集合框架图 Java平台提供了一个全新的集合框架.“集合框架”主要由一组用来操作对象的接口组成.不同接口描述一组不同数据类型. Java集合框架图如下: 集合接口:6个接口(短虚线表示),表示不同集合类型,是集合框架的基础. 抽象类:5个抽象类(长虚线表示),对集合接口的部分实现.可扩展为自定义集合类. 实现类:8个实现类(实线表示),对接口的具体实现. 在很大程度上,一旦您理解了接口,您就理解了框架.虽然您总要创建接口特定的实现,但访问实际集合的方法应该限制在接口方法的使用上;因此,允许您更改基本的数据结构而不必改变其它代码. Java集合的顶层接口是Collection,Collection 接口是一组允许重复的对象.Java集合框架主要由以下三个接口组成: (1) Set 接口继承Collection,但不允许重复,使用自己内部的一个排列机制. (2) List 接口继承Collection,允许重复,以元素安插的次序来放置元素,不会重新排列.

(3) Map接口是一组成对的键-值对象,即所持有的是 key-value pairs.Map中不能有重复的key,拥有自己的内部排列机制. 容器中的元素类型都为Object,从容器取得元素时,必须把它转换成原来的类型.简化后的集合框架图如下: 2. 接口Collection 用于表示任何对象或元素组,想要尽可能以常规方式处理一组元素时,就使用这一接口. (1) 单元素添加、删除操作: boolean add(Object o):将对象添加给集合 boolean remove(Object o): 如果集合中有与o相匹配的对象,则删除对象o (2) 查询操作: int size():返回当前集合中元素的数量 boolean isEmpty():判断集合中是否有任何元素 boolean contains(Object o):查找集合中是否含有对象o Iterator iterator():返回一个迭代器,用来访问集合中的各个元素 (3) 组操作:作用于元素组或整个集合 boolean containsAll(Collection c): 查找集合中是否含有集合c 中所有元素 boolean addAll(Collection c) : 将集合c 中所有元素添

java集合-练习题解析

1. 填空 Collection 接口的特点是元素是___无序可重复______; List 接口的特点是元素__有__(有|无)顺序,_可以___(可以|不可以)重复; Set 接口的特点是元素__无___(有|无)顺序,____不可以__(可以|不可以)重复;Map 接口的特点是元素是__key、value映射______,其中__value__可以重复,_key___不可以重复。 2. (List)有如下代码 import java.util.*; public class TestList{ public static void main(String args[]){ List list = new ArrayList(); list.add(“Hello”); list.add(“World”); list.add(1, “Learn”); list.add(1, “Java”); printList(list); } public static void printList(List list){ //1 for(int i = 0; i< list.size();i++){ System.out.println(list.get(i)); } for(Object o : list) { System.out.println(o); } Iterator itor = list.iterator(); while(itor.hasNext()){ System.out.println(itor.next()); } } } 要求: 1) 把//1 处的代码补充完整,要求输出list 中所有元素的内容 2) 写出程序执行的结果Hello Java Learn World 3) 如果要把实现类由ArrayList 换为LinkedList,应该改哪里?ArrayList 和LinkedList 使用上有什么区别?实现上有什么区别? 4) 如果要把实现类由ArrayList 换为Vector,应该改哪里?ArrayList 和Vector 使 用上有什么区别?实现上有什么区别? 3. (List)写出下面程序的运行结果

相关文档
最新文档