⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testformat.java

📁 Jodd是一个开源的公用Java基础类库
💻 JAVA
字号:
package jodd.format;

import junit.framework.TestCase;

public class TestFormat extends TestCase {

	public void testIntLong() {
		assertEquals("1", Format.sprintf("%d", 1));
		assertEquals("17", Format.sprintf("%d", 17));
		assertEquals("173", Format.sprintf("%d", 173));
		assertEquals("173000000", Format.sprintf("%d", 173000000));

		assertEquals("+173", Format.sprintf("%+i", 173));
		assertEquals("+173", Format.sprintf("%+0i", 173));
		assertEquals("173", Format.sprintf("%0i", 173));

		assertEquals("+173", Format.sprintf("%+u", 173));
		assertEquals("+173", Format.sprintf("%+0u", 173));
		assertEquals("173", Format.sprintf("%0u", 173));

		assertEquals("AD", Format.sprintf("%X", 173));
		assertEquals("ad", Format.sprintf("%+x", 173));
		assertEquals("7", Format.sprintf("%+0X", 7));
		assertEquals("0X7", Format.sprintf("%#X", 7));
		assertEquals("0x7", Format.sprintf("%#x", 7));
		assertEquals("0XAD", Format.sprintf("%#X", 173));
		assertEquals("255", Format.sprintf("%o", 173));

		int i = -1;
		assertEquals("-1", Format.sprintf("%d", i));
		assertEquals("-1", Format.sprintf("%i", i));
		assertEquals("4294967295", Format.sprintf("%u", i));	// 2^32 - 1
		assertEquals("ffffffff", Format.sprintf("%x", i));

		i =	2147483647;			// 2^16 - 1
		assertEquals("2147483647", Format.sprintf("%d", i));
		assertEquals("2147483647", Format.sprintf("%i", i));
		assertEquals("2147483647", Format.sprintf("%u", i));
		assertEquals("7fffffff", Format.sprintf("%x", i));

		i++;
		assertEquals("-2147483648", Format.sprintf("%d", i));
		assertEquals("-2147483648", Format.sprintf("%i", i));
		assertEquals("2147483648", Format.sprintf("%u", i));
		assertEquals("80000000", Format.sprintf("%x", i));

		long l = 2147483648L;	// 2 ^ 16
		assertEquals("2147483648", Format.sprintf("%d", l));
		assertEquals("-2147483648", Format.sprintf("%i", l));
		assertEquals("2147483648", Format.sprintf("%u", l));
		assertEquals("80000000", Format.sprintf("%x", l));

		l = -2147483649L;
		assertEquals("-2147483649", Format.sprintf("%d", l));
		assertEquals("2147483647", Format.sprintf("%i", l));
		assertEquals("2147483647", Format.sprintf("%u", l));
		assertEquals("FFFFFFFF7FFFFFFF", Format.sprintf("%X", l));

		l = -1;
		assertEquals("-1", Format.sprintf("%d", l));
		assertEquals("-1", Format.sprintf("%i", l));
		assertEquals("4294967295", Format.sprintf("%u", l));
		assertEquals("ffffffffffffffff", Format.sprintf("%x", l));
	}


	public void testFormatedInt() {
		assertEquals("0001", Format.sprintf("%04d", 1));
		assertEquals("+001", Format.sprintf("%+04d", 1));
		assertEquals("-001", Format.sprintf("%+04d", -1));
		assertEquals("+0001", Format.sprintf("%+~04d", 1));
		assertEquals("0001", Format.sprintf("%~04d", 1));
		assertEquals("-0001", Format.sprintf("%+~04d", -1));

		assertEquals("   1", Format.sprintf("%4d", 1));
		assertEquals("  +1", Format.sprintf("%+4d", 1));
		assertEquals("  -1", Format.sprintf("%+4d", -1));
		assertEquals("+1  ", Format.sprintf("%-+4d", 1));
		assertEquals("-1  ", Format.sprintf("%-+4d", -1));
	}

	public void testStrings() {
		assertEquals("A", Format.sprintf("%c", 'A'));
		assertEquals("str", Format.sprintf("%s", "str"));
		assertEquals("% 1", Format.sprintf("%% %i", 1));
		assertEquals("% % % 1", Format.sprintf("%% %% %% %i", 1));
		assertEquals("1 %%", Format.sprintf("%i %%", 1));

		assertEquals("q w", Format.sprintf("%s %s", new String[]{"q", "w"}));
		assertEquals(" q w", Format.sprintf(" %s %s", new String[]{"q", "w"}));
		assertEquals("q w ", Format.sprintf("%s %s ", new String[]{"q", "w"}));
		assertEquals(" q w 1 2 3 ", Format.sprintf(" %s %s %s %s %s ", new String[]{"q", "w", "1", "2", "3"}));

		assertEquals("q%w", Format.sprintf("%s%%%s", new String[]{"q", "w"}));
		assertEquals("q%", Format.sprintf("%s%%", new String[]{"q"}));
		assertEquals("q% ", Format.sprintf("%s%% ", new String[]{"q"}));
		assertEquals("q %", Format.sprintf("%s %%", new String[]{"q"}));
		assertEquals("q % ", Format.sprintf("%s %% ", new String[]{"q"}));
		assertEquals("%q", Format.sprintf("%%%s", new String[]{"q"}));
		assertEquals("% q", Format.sprintf("%% %s", new String[]{"q"}));
		assertEquals("% q ", Format.sprintf("%% %s ", new String[]{"q"}));
		assertEquals(" % q ", Format.sprintf(" %% %s ", new String[]{"q"}));
	}

	public void testReals() {
		assertEquals("1.700000", Format.sprintf("%f", 1.7));
		assertEquals("1.7", Format.sprintf("%1.1f", 1.7));
		assertEquals("1.7", Format.sprintf("%2.1f", 1.7));
		assertEquals("1.7", Format.sprintf("%3.1f", 1.7));
		assertEquals(" 1.7", Format.sprintf("%4.1f", 1.7));
		assertEquals("1.70", Format.sprintf("%4.2f", 1.7));
		assertEquals("1.79", Format.sprintf("%4.2f", 1.79999999999));

		assertEquals("17.3", Format.sprintf("%1.1f", 17.3));
		assertEquals("17.3", Format.sprintf("%2.1f", 17.3));
		assertEquals("17.3", Format.sprintf("%3.1f", 17.3));
		assertEquals("17.3", Format.sprintf("%4.1f", 17.3));
		assertEquals("17.30", Format.sprintf("%4.2f", 17.3));
		assertEquals(" 17.3", Format.sprintf("%5.1f", 17.3));
		assertEquals("17.30", Format.sprintf("%5.2f", 17.3));
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -