public String multiply(String num1, String num2) {
		int[] arr = new int[num1.length() + num2.length()];
		Arrays.fill(arr, 0);
		for (int i = num1.length() - 1; i >= 0; --i) {
			int carry = 0;
			for (int j = num2.length() - 1; j >= 0; --j) {
				int val = arr[i + j + 1] + (num1.charAt(i) - '0')
						* (num2.charAt(j) - '0') + carry;
				int num = val % 10;
				carry = val / 10;
				arr[i + j + 1] = num;
			}
			arr[i] += carry;
		}
		String result = "";
		int i = 0;
		for (; i < arr.length; ++i) {
			if (arr[i] != 0)
				break;
		}
		if (i == arr.length)
			return "0";
		while (i < arr.length) {
			result += arr[i++];
		}
		return result;
	}