1. 程式人生 > >Java 中的字符串 操作

Java 中的字符串 操作

常量 ood org substring str1 lean 遍歷 builder this

package day01;

import org.junit.Test;
public class TestString {

	/**
	 * 測試常量池
	 *
	 * */
	@Test
	public void testConstantPool(){
		String str1 = "Hello";
		//
		String str2 = "Hello";
		//兩個對象使用==進行比較,返回值為true 說明兩個對象引用 指向的內存區域相同
		System.out.println(str1 == str2);
		
		String str3 =  new String("Hello");
		//說明兩個對象引用 指向的內存區域  不 相同,使用new創建的字符串 不會緩存在String
		//常量池
		System.out.println(str1 == str3);
		
	}
	/*
	 * 獲取String 對象的長度
	 */
	@Test
	public void testLength(){
		String str1 = "Hello";
		System.out.println(str1.length());
		//在內存中采用Unicode編碼 每個字節2個字符
		//任何一個字符都算一個長度
		String str2 = "你好,String";
		System.out.println(str2.length());
	}
	/*
	 * 字符串截取
	 */
	@Test
	public void testSubstring(){
		String str = "http://www.oracle.com";
		String substr = str.substring(11, 17);
		System.out.println(substr);
		
	}
	/*
	 * 去掉空格Trim
	 * 
	 */
	@Test
	public void testTrim(){
		String userName = "  good man";
		System.out.println(userName.length());
		
		userName = userName.trim();
		System.out.println(userName.length());
		System.out.println(userName);
		
	}
	/*
	 * 遍歷字符串中的字符序列
	 */
	@Test
	public void testCharAt(){
		String name = "xuejingbo";
		for (int i=0;i<name.length();i++){
			char c = name.charAt(i);
			System.out.print(c+ " ");
		}
	}
	//endWith 以特定字符結束  startsWidth 以**開始
	//toLowerCase
	//toUpperCase
	
	//將其他類型的轉為字符串
	//String 類的valueOf 重載的方法,可以將double類型,int類型,Boolean及char
	//類型轉變為String類變量
	@Test
	public void testValueOf(){
		double pi = 3.1415926;
		int value = 123;
		boolean flag = true;
		char[] charArr = {‘a‘,‘b‘,‘c‘,‘d‘,‘e‘,‘f‘,‘g‘};
		
		String str = String.valueOf(pi);
		System.out.println(str);
		str = String.valueOf(value);
		System.out.println(str);
	}
	/*
	 * 測試StringBuilder append
	 */
	@Test
	public void testAppend(){
		StringBuilder sb = new StringBuilder("programing language:");
		sb.append("java").append("cpp").append("php").append("c#");
		System.out.println(sb.toString());
	}
	/*
	 * 測試StringBuilder insert
	 */
	@Test
	public void testInsert(){
		StringBuilder sn = new StringBuilder("thisisatest");
		sn.insert(5, "html");
		System.out.println(sn);
	}
}

  

Java 中的字符串 操作