public static long parseLong(String number) {
		if (StrUtil.isBlank(number)) {
			return 0L;
		}

		if (number.startsWith("0x")) {
			// 0x04表示16进制数
			return Long.parseLong(number.substring(2), 16);
		}

		try {
			return Long.parseLong(number);
		} catch (NumberFormatException e) {
			return parseNumber(number).longValue();
		}
	}
@Test
	public void parseLongTest2() {

		// -------------------------- Parse failed -----------------------

		final Long v1 = NumberUtil.parseLong(null, null);
		assertNull(v1);

		final Long v2 = NumberUtil.parseLong(StrUtil.EMPTY, null);
		assertNull(v2);

		final Long v3 = NumberUtil.parseLong("L3221", 1233L);
		assertEquals(1233L, v3);

		// -------------------------- Parse success -----------------------

		final Long v4 = NumberUtil.parseLong("1233L", null);
		assertEquals(1233L, v4);

	}