java String类的基本使用
package com.sl.String.ui;
import java.lang.reflect.Array;
import java.util.Arrays;
public class StringTest {
public static void main(String[] args) {
createString();
System.out.println("字符串长度:"+ getsStringLength("获取字符串长度"));
getStringLookup();
stringManipulation();
stringWhitespaceRemoval();
stringSubstitution();
stringStartAndEnd();
stringEquality();
stringCaseConversion();
stringSegmentation();
}
/**
* 创建字符串
*/
public static void createString(){
//用字符数组a创建String对象
char a[] ={'g','o','o','d'};
String s=new String(a);
//提取字符数组b的一部分创建String对象
char b[] ={'a','b','c','d'};
String s1 = new String(b,1,3);
//常量赋值创建String对象
String s2,s3;
s2="abcdefg";
s3="hijk";
//直接创建String对象
String s4=new String("1235363352225");
System.out.println(s+"\n"+s1+"\n"+s2+"\n"+s3+"\n"+s4);
}
/**
* 获取字符串长度
* @param s 传入的字符串
* @return 长度
*/
public static int getsStringLength(String s){
int length = 0;
length = s.length();
return length;
}
/**
* 字符串的查找
*/
public static void getStringLookup(){
String s =new String("abcdefagab");
//查找某个字符串在字符串中的首次出现的索引
int index = s.indexOf("a");
System.out.println("a在s对象中首次出现索引是:"+index);
/**
* 查找某个字符串在字符串中的最后一次出现的索引
* 注意:如果lastIndexOf()方法中的字符串是空字符串"",则返回的记过与调用length()方法返回的结果相同
*/
int index2 = s.lastIndexOf("a");
System.out.println("a在s对象中最后一次出现索引是:"+index2);
//获取指定索引的字符串
char c = s.charAt(3);
System.out.println("s对象指定索引的字符是:"+c);
}
/**
* 字符串操作
*/
public static void stringManipulation(){
String s =new String("abcdefagab");
//从指定索引位置开始截取到该字符串结尾的子字符串(包含该索引下的字符)
int index = 2;
String s1 = s.substring(index);
System.out.println("从索引"+index + "到结尾的字符串是:" + s1);
//从字符串某一索引开始截取到某一索引结束的子字符串(不包含index2下标的字符)
int index2 = 5;
String s2= s.substring(index,index2);
System.out.println("从索引"+index + "到" + index2 + "的字符串是:" + s2);
}
/**
* 去除空格
*/
public static void stringWhitespaceRemoval(){
String s ="abcdefagab ";
String s1 =s.trim();
System.out.println("原长度为"+ s.length() + "\n"+"去除空格后的字符串:"+s1 + "\n" + "长度为:"+s1.length());
}
/**
* 字符串替换
*/
public static void stringSubstitution(){
String s ="abcdefagab";
String s1 = s.replace("a","9");
System.out.println("替换前的字符串:"+s +"\n"+"替换后的字符串:"+s1);
//如果要替换的字符串没有出现在该对象表达式字符串序列中,则原字符串返回
String s2 = s.replace("h","9");
System.out.println("替换前的字符串:"+s +"\n"+"替换后的字符串:"+s2);
}
/**
*判断字符串开始与结尾
*/
public static void stringStartAndEnd(){
String s ="abcdefagab";
String prefix = "a";
String suffix = "a";
if (s.startsWith(prefix)){
System.out.println(s+"是以"+prefix + "开始的");
}
else {
System.out.println(s+"不是以"+prefix + "开始的");
}
if (s.endsWith(suffix)){
System.out.println(s+"是以"+prefix + "结束的");
}
else {
System.out.println(s+"不是以"+prefix + "结束的");
}
//从特定下标下开始
int index = 6;
if (s.startsWith(prefix,index)){
System.out.println("从"+index + "开始查找的"+s+"字符串是以"+prefix + "开始的");
}
else {
System.out.println("从"+index + "开始查找的"+s+"字符串不是以"+prefix + "开始的");
}
}
/**
* 判断字符串相等
*/
public static void stringEquality(){
String s = new String("jfhkofoldol");
String s2 = new String("Afkkfopgpfppe");
String s3 = new String("Jfhkofoldol");
//运算符判断 没法判断内容相等 因为s与s1是两个不同的对象
if (s==s2){
System.out.println(s+"与"+s2+"相等");
}
else {
System.out.println(s+"与"+s2+"不相等");
}
//比较两个字符串内容是否相等 区分大小写
if (s.equals(s3)){
System.out.println(s+"与"+s3+"相等");
}
else {
System.out.println(s+"与"+s3+"不相等");
}
//比较两个字符串内容是否相等 不区分大小写
if (s.equalsIgnoreCase(s3)){
System.out.println(s+"与"+s3+"相等");
}
else {
System.out.println(s+"与"+s3+"不相等");
}
}
/**
* 字符串字母大小写转换
* 注意:如果字符串中没有被转换的字符,则将返回原字符
*/
public static void stringCaseConversion(){
String s = new String("jfhkofBBBBBBBBBBldol");
//大写转成小写
s = s.toLowerCase();
System.out.println(s);
//小写转成大写
s=s.toUpperCase();
System.out.println(s);
}
/**
* 字符串分割
*/
public static void stringSegmentation(){
String s = new String("jfhk=of=BBB-BBBBB-BBl-dol");
//单个字符分割 不限定次数
String[] stringarray=s.split("-");
System.out.println("单个字符分割"+s+"分割成:"+ Arrays.toString(stringarray));
//多个字符分割 不限定次数
String[] stringarray2=s.split("-|=");
System.out.println("多个字符分割"+s+"分割成:"+ Arrays.toString(stringarray2));
//限定次数
String[] stringarray3=s.split("-",2);
System.out.println("单个字符分割"+s+"限定2次"+"分割成:"+ Arrays.toString(stringarray3));
}
}
网友评论