一、字符串
1、用Substring分解字符串:使用String对象的substring()方法:
可以用String对象的indexof()或lastindexof()方法生成一个索引:
public class substringDemo{
public static void main(String []arg){
String a="java is great.";
System.out.println(a);
String b=a.substring(5);//b为“isgreat.”
String c=a.substring(5,7);//c为"is"
String d=a.substring(5,a.length());//d为"isgreat."
}
}
2、将字符串按空格分解成词:
构建一个StringTokenizer ,调用其hasMoreTokens()和nextToken()方法。
StringTokenizer st=newStringTokenizer("....");
while(st.hasMoreTokens())
System.out.println("Token:"+st.nextToken());
3、用StringBuilder连接字符串
用字符串连接符“+”连接字符串。编译器将隐含构造一个StringBuilder对象,并调用其append()方法。
4、处理单个字符串:
使用一个for循环和String的charAt()方法,或使用"for each" 循环和String 的toCharArray()方法
5、字符串对齐
1)自己先计算,并使用subString和StringBuilder来完成;
2)用StringAlign类,基于java.text.Format类实现。使用String.format()实现左对齐或右对齐。
6、按单词或字符颠倒字符串
使用StringBuilder类,按字符颠倒字符串的顺序。按单词颠倒一个字符串可以有几种方法,一种自然的方法是使用StringTokenizer和堆栈。Stack类根据一个易于使用的后进先出的原则实现对象的插入和删除。
使用StringBuilder类的reverse()方法可颠倒字符串中字符的顺序:
StringRevChar.java
String sh="FCGHJADHA";
System.out.println(sh+"=>"+newStringBuilder(sh).reverse());
处理字符串语句时:
String s="Father Charles Goes Down AndEnds Battle";
Stack
StringTokenizer st=new StringTokenizer(s);
while(st.hasMoreTokens()){
myStack.push(st.nextToken());
}
System.out.print(""+s+""+" backwords by wordis:\n\t");
while(!myStack.empty()){
System.out.print(myStack.pop());
}
7、扩展和压缩Tab 在一个文件中,需要将空格字符转换成为制表符,反之亦然。
使用 Tabs类或其子类EnTab com.darwinsys.util.Debug上的在线代码
8、控制字母大小写
String对象的toUpperCase()方法将字符串字母转换为大写字母;toLowerCase()方法将字符串字母转换为小写字母;
equals()方法可以判断一个字符串与另一个是与否相同;而equalsIgnoreCase()方法则在忽略大小写情况下比较两个字符串;
9、缩排文本文档
①要实现缩进功能,可以生成一个固定长度的字符串,预先将其安排到每个输出行,或使用一个for循环并输出正确的空格数:
while((inputLine=is.readLine())!=null){
for(int i=0;i>nSpaces;i++){
System.out.print(" ");
System.out.println(inputLine);
}
}
②生成空格的一个更为有效的方法可能是构建一长串空格,并使用substring()方法来获得所需空格的数量。
要实现缩出功能,使用substring()方法生成一个字符串,该字符串不包含起始空格。
while((inputLine=is.readLine())!=null){
int toRemove=0;
for(inti=0;i ++toRemove; System.out.println(inputLine.substring(toRemove)); } 10、输入非打印字符 解决方案:使用反斜杠字符和一个Java转义字符。 public class StringEscapes{ public static void main(String [] arg){ System.out.println("Java Strings inaction:"); //System.out.println("An alarm oralert:\a");不支持 System.out.println("An alarm enteredin Octal :\007"); System.out.println("A tabkey:\t(what comes after)"); System.out.println("AnewLine:\n"); System.out.println("A UniCodecharacter:\u0207"); System.out.println("A backslashcharacter:\\"); } } 11、删除字符串的尾部空格:需要删除一个字符串的前置或后置空格: 方法:使用String类的trim()方法; 示例使用trim()方法从Java源代码行删除任意数量的前置空格和/或制表符,用以查找字符// +和// -。