付费节点推荐
免费节点
节点使用教程
主要内容:
1. String类
2. StringTokenizer类
3. Scanner类
4. Data类与Calendar类
5. 日期格式化
6. Math、BigInteger与Random类
7. 数字格式化
8. StringBuffer类
9. Pattern与Match类
10. Class类
[t]8.1 String类[/t]
(1)String类在java.lang包中
(2)String类为final类,不可以有子类,也不能扩展String类
[t]8.1.1 构造字符串对象[/t]
String s=new String("abc");
char a[]={'j','a','v','a'};
String str=new String(a); 相当于
String s=new String("Java");
char a[]={'a','b','c','d','e','f','g','h','i'};
String s=new String(a,2,4); // String(char a[],int startIndex,int count);提取字符串数组a中一部分字符创建一个字符串对象。
String类常用方法
1. public int length()
使用String类中的length方法可以获取一个字符串的长度。
2. public boolean equals(String s)
字符串对象调用equals方法比较当前字符串对象的实体是否与参数s指定的字符串的实体相同。
String s1=new String("12345");
String s2=new String("234");
boolean a=s1.equals(s2);
3.public boolean startsWith(String s)、public boolean endsWith(Stirng s)方法
字符串对象调用startWith(String s)方法,判断当前字符串对象的前缀是否是参数s指定的字符串,如:
String num1="abcderg",num2="qwert";
则: num1.startsWith("abcd"); 的值为true,num2.endsWith("wrt"); 为false
4.public int compareTo(String s)方法
字符串对象可以使用String类中的compareTo(String s)方法,按字典序与参数s指定的字符串比较大小。如果当前字符串与s相同,该方法返回值0,如果当前字符串对象大于s,该方法返回正值;如果小于s,回访负值。
String str="abcde";
System.out.println(str.compareTo("ac")); // 结果为 -1
例子:
package com.String;
import java.util.Arrays;
class StringSort{
public static void sort(String a[]){
int count=0;
for(int i=0;i<a.length-1;i++)
{
for(int j=i+1;j<a.length;j++)
{
if(a[j].compareTo(a[i])<0)
{
String temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
}
}
public class example {
public static void main(String[] args) {
String []a={"melon","apple","pear","banana"};
String []b={"西瓜","苹果","梨","香蕉"};
System.out.println("使用自定义类中的字母排列方法:");
StringSort.sort(a);
for(int i=0;i<a.length;i++)
{
System.out.println(" "+a[i]);
}
System.out.println(" ");
System.out.println("使用类库中的Arrays类,按字典序排列数组b:");
Arrays.sort(b);
for(int i=0;i<a.length;i++)
{
System.out.println(" "+b[i]);
}
}
}
5. public boolean contains(String s)
字符串对象调用contains方法判断当前字符串对象是否有参数指定的字符串s,例如,tom="student",那么tom.contains("tu")的值就是true
String s="student";
System.out.println(s.contains("tu"));
6. public int indexOf(String s)
字符串调用方法indexOf从当前字符串的头开始检索字符串s,并返回首次出现s的索引位置。如果没有索引到字符串s,该方法返回的值为-1
Stirng tom-"I am a good cat";
tom.indexOf("a"); // 值为2
tom.indexOf("good",2); //值为7,从位置2开始检索
tom.indexOf("a",7); //值为13,从位置7开始检索
tom.indexOf("w",2); //值为-1
7. public String substring(int startpoint)
字符串对象调用substring方法获得一个当前字符串的子串,该子串是从当前字符串的startpoint出截取到最后所得到的字符串。若调用substring(int start,int end)方法则截取字符串start~end-1上的字符串。
String tom="我喜欢篮球";
String s=tom.substring(1); //s的值为 ”喜欢篮球“
String s1=tom.substring(1,3); //s1的值为“喜欢”
8. public String trim()
一个字符串s通过调用方法trim()得到一个字符串对象,该字符串对象时s去掉前后空格后的字符串。
例子:
package com.String;
public class string_contains {
public static void main(String[] args) {
String path="c:\\book\\javabook\\Java Programmer.doc";
int index=path.indexOf("\\");
index=path.indexOf("\\",index);
String sub=path.substring(index);
System.out.println(sub);
index=path.lastIndexOf("\\");
sub=path.substring(index+1);
System.out.println(sub);
System.out.println(sub.contains("Programmer"));
}
}
结果:
\book\javabook\Java Programmer.doc
Java Programmer.doc
true
8.1.3 字符串与基本数据的互相转换
(1)使用java.lang包中的Byte、Short、Long、Float、Double 类调用相应的类方法可以将由“数字”字符串组成的字符转换为相应的基本数据类型。
例如:
String s="678";
int x=Integer.parseInt(s);
float x1=Float.parseFloat(s);
double x2=Double.Double("3435.565");
(2)可以使用
public static String valueOf(byte n)
public static String valueOf(int n)
public static String valueOf(long n)
public static String valueOf(float n)
public static String valueOf(double n)
将形如123、1232.98等数值转化为字符串,如:
String str=String.valueOf(12313.8756);
例如:
package com.String;
public class String_parseInt{
public static void main(String args[]){
double aver=0,sum=0,item=0;
boolean computer=true;
for(String s:args){
try{
item=Double.parseDouble(s); //将输入的字符串转换为Double型
sum=sum+item;
}
catch(NumberFormatException e){
System.out.println("您输入的非数字字符:"+e);
computer=false;
}
}
if(computer){
System.out.println("sum="+sum);
}
}
}
[t]对象的字符串表示[/t]
Object类有一个public String to toString()方法,一个对象通过调用该方法可以获得该对象的字符串表示。
package com.String;
import java.util.Date;
public class to_string {
public static void main(String args[])
{
Date date=new Date();
System.out.println(date.toString());
}
}
[t]8.1.5字符串与字符、字节数组[/t]
1. 字符串与字符数组
String类提供了将字符串存放到数组中的方法: public void getChar(int start,int end,char c[],int offset);
字符串调用getChars()方法将当前字符串中的一部分字符串复制到参数c指定的数组中,将字符串中从位置start到end-1位置上的字符串复制到数组c中,并从数组c的offset处开始存放这些字符。
char [] a;
String s="bcoder编程学习网";
a=new char[5];
s.getChars(1,6,a,0);
System.out.println(a);
未经允许不得转载:Bcoder资源网 » 【JAVA基础知识】第八章 常用实用类(1)
评论前必须登录!
登陆 注册