String in Java with Examples - Java 147

String in Java with Examples – Java 147

  • Post author:
  • Post category:RD / Java
  • Post comments:0 Comments
  • Post last modified:2023-08-14

String in Java with Examples

為了使 Java 更有效地使用記憶體,用文字的方式建立字串時,當字串池不存在此物件,則會建立新物件,然後會被放置於字串池,若字串池已存在此物件,則不會建立新物件,String in Java 介紹常見的 split 、 compareTo 、 valueOf 、 startsWith 等方法,本篇增加了範例,並透過單元測試來驗證產出結果。

檔案目錄

./
   +- src
       +- test
       |   +- org
       |       +- ruoxue
       |           +- java_147
       |               +- string
       |                   +- StringWithExamplesTest.java   

單元測試

String Java 提供分割、比較、轉換等操作 String 。

split

建立一個 String ,依分割符分割字串,傳回陣列 。

	@Test
	public void split() {
		String value = "Assertj 155";
		String[] result = value.split(" ");
		System.out.println(Arrays.toString(result));
		assertEquals(2, result.length);

		result = value.split(",");
		System.out.println(Arrays.toString(result));
		assertEquals(1, result.length);
	}
[Assertj, 155]
[Assertj 155]

compareTo

String Java 建立一個 String ,比較字串。

	@Test
	public void compareTo() {
		String value = "Assertj 155";
		int result = value.compareTo("assertj 155");
		System.out.println(result);
		assertTrue(result < 0);

		value = "assertj 155";
		result = value.compareTo("Assertj 155");
		System.out.println(result);
		assertTrue(result > 0);

		result = value.compareTo("assertj 155");
		System.out.println(result);
		assertTrue(result == 0);
	}
-32
32
0

compareToIgnoreCase

String Java 建立一個 String ,不分大小寫比較字串。

	@Test
	public void compareToIgnoreCase() {
		String value = "Assertj 155";
		int result = value.compareToIgnoreCase("assertj 155");
		System.out.println(result);
		assertTrue(result == 0);

		value = "assertj 155";
		result = value.compareToIgnoreCase("Assertj 155");
		System.out.println(result);
		assertTrue(result == 0);

		result = value.compareToIgnoreCase("assertj 155");
		System.out.println(result);
		assertTrue(result == 0);
	}
0
0
0

valueOf

String Java 建立一個整數,轉換成字串。

	@Test
	public void valueOf() {
		int value = 155;
		String result = String.valueOf(value);
		System.out.println(result);
		assertEquals("155", result);

		result = String.valueOf((Object) null);
		System.out.println(result);
		assertEquals("null", result);
	}
155
null

startsWith

Java String 建立一個 String ,檢查開頭是否為指定字串。

	@Test
	public void startsWith() {
		String value = "Assertj 155";
		boolean result = value.startsWith("Assertj");
		System.out.println(result);
		assertTrue(result);

		result = value.startsWith("155");
		System.out.println(result);
		assertFalse(result);
	}
true
false

endsWith

Java String 建立一個 String ,檢查結尾是否為指定字串。

	@Test
	public void endsWith() {
		String value = "Assertj 155";
		boolean result = value.endsWith("155");
		System.out.println(result);
		assertTrue(result);

		result = value.endsWith("Assertj");
		System.out.println(result);
		assertFalse(result);
	}
true
false

equals

Java String 建立一個 String ,比較字串是否相等。

	@Test
	public void equals() {
		String value = "Assertj 155";
		boolean result = value.equals("Assertj 155");
		System.out.println(result);
		assertTrue(result);

		result = value.equals("Assertj");
		System.out.println(result);
		assertFalse(result);
	}
true
false

equalsIgnoreCase

Java String 建立一個 String ,不分大小寫比較字串是否相等。

	@Test
	public void equalsIgnoreCase() {
		String value = "Assertj 155";
		boolean result = value.equalsIgnoreCase("assertj 155");
		System.out.println(result);
		assertTrue(result);

		result = value.equalsIgnoreCase("assertj");
		System.out.println(result);
		assertFalse(result);
	}
true
false

StringWithExamplesTest.java

String in Java 新增單元測試,驗證是否符合預期。

package org.ruoxue.java_147.string;

import static org.junit.Assert.*;

import java.util.Arrays;

import org.junit.Test;

public class StringWithExamplesTest {

	@Test
	public void split() {
		String value = "Assertj 155";
		String[] result = value.split(" ");
		System.out.println(Arrays.toString(result));
		assertEquals(2, result.length);

		result = value.split(",");
		System.out.println(Arrays.toString(result));
		assertEquals(1, result.length);
	}

	@Test
	public void compareTo() {
		String value = "Assertj 155";
		int result = value.compareTo("assertj 155");
		System.out.println(result);
		assertTrue(result < 0);

		value = "assertj 155";
		result = value.compareTo("Assertj 155");
		System.out.println(result);
		assertTrue(result > 0);

		result = value.compareTo("assertj 155");
		System.out.println(result);
		assertTrue(result == 0);
	}

	@Test
	public void compareToIgnoreCase() {
		String value = "Assertj 155";
		int result = value.compareToIgnoreCase("assertj 155");
		System.out.println(result);
		assertTrue(result == 0);

		value = "assertj 155";
		result = value.compareToIgnoreCase("Assertj 155");
		System.out.println(result);
		assertTrue(result == 0);

		result = value.compareToIgnoreCase("assertj 155");
		System.out.println(result);
		assertTrue(result == 0);
	}

	@Test
	public void valueOf() {
		int value = 155;
		String result = String.valueOf(value);
		System.out.println(result);
		assertEquals("155", result);

		result = String.valueOf((Object) null);
		System.out.println(result);
		assertEquals("null", result);
	}

	@Test
	public void startsWith() {
		String value = "Assertj 155";
		boolean result = value.startsWith("Assertj");
		System.out.println(result);
		assertTrue(result);

		result = value.startsWith("155");
		System.out.println(result);
		assertFalse(result);
	}

	@Test
	public void endsWith() {
		String value = "Assertj 155";
		boolean result = value.endsWith("155");
		System.out.println(result);
		assertTrue(result);

		result = value.endsWith("Assertj");
		System.out.println(result);
		assertFalse(result);
	}

	@Test
	public void equals() {
		String value = "Assertj 155";
		boolean result = value.equals("Assertj 155");
		System.out.println(result);
		assertTrue(result);

		result = value.equals("Assertj");
		System.out.println(result);
		assertFalse(result);
	}

	@Test
	public void equalsIgnoreCase() {
		String value = "Assertj 155";
		boolean result = value.equalsIgnoreCase("assertj 155");
		System.out.println(result);
		assertTrue(result);

		result = value.equalsIgnoreCase("assertj");
		System.out.println(result);
		assertFalse(result);
	}
}

心得分享

Java String Example 提供了幾種 String 常見方法的操作範例,在應用上相當廣泛,熟悉 Java String 這些方法的操作,像是: split 、 compareTo 、 valueOf 、 startsWith 等方法。

發佈留言