如何从int中提取前4位数? (JAVA)

时间:2011-03-13 16:07:59

标签: java

我正在寻找一种方法将字符串转换为int,然后提取并返回此int中的前4位数字。

注意:它必须保留为String,以便其他方法正常工作。

5 个答案:

答案 0 :(得分:8)

请尝试以下操作:

String str = "1234567890";
int fullInt = Integer.parseInt(str);
String first4char = str.substring(0,4);
int intForFirst4Char = Integer.parseInt(first4char);

无论您希望前四个字符的整数使用intForFirst4Char,还是希望使用适当的字符串。

希望这有帮助。

答案 1 :(得分:8)

答案 2 :(得分:1)

您可以使用以下内容:

Integer.parseInt("123".substring(0, 2))

OR

int temp = 12345678;
int result = temp / (int)Math.pow(10, (int)(Math.log10(temp) - 1))

答案 3 :(得分:0)

public class ExtractingDigits {

/**
 * @param args
 */
public static void main(String[] args) {
    // TODO Auto-generated method stub

    int num = 1542,ans=0;

    for(int i=1; i<=4; i++){
        ans=num%10;
        System.out.println(ans);
        num = num/10;
    }
}

}

答案 4 :(得分:0)

这将为您提供数组中的数字

public Integer[] convertNumbertoArrayLtoR(Integer[] array, Integer number, Integer maxDivisor, Integer i)
{
    if (maxDivisor > 0)
    {
        Integer digit = number/maxDivisor;
        array[i] = digit;
        number = number%maxDivisor;
        maxDivisor = (int) Math.floor(maxDivisor/10);
        i++;
        convertNumbertoArrayLtoR(array, number, maxDivisor, i);
    }
    return array;
}

通话方法

digitArrayLR = convertNumbertoArrayLtoR(digitArrayLR, numberInput, maxDivisor, 0);