如何从数组中获取单个整数?

时间:2017-07-10 17:19:06

标签: arrays integer

例如,我有一个包含两个字符的数组:

char myArr[2] = {5, 1};

有没有办法得到一个与这两个数字相关联的整数(51)?

3 个答案:

答案 0 :(得分:0)

所以你想要一个可能的数组索引组合的数字表示?您可以使用字符串连接从数组中创建单个字符串,如

string s = new string(myArr);

string s = String.Concat( myArr );

然后你可以做一个int解析或转换字符串来给你字符串的数字表示。

答案 1 :(得分:0)

请尝试这段代码

public class HelloWorld{

     public static void main(String []args){
        char myArr[] = {5, 1};
        int val=0;
        for(int i=0;i<myArr.length;i++){
            val=val*10+myArr[i];
        }
        System.out.println(val);
     }
}

答案 2 :(得分:0)

如果您的char数组的值为int,那么最简单的方法是将数组的每个元素乘以 10 ,这样就可以对下一个字符求和成倍增加的数十的值。这将允许您加入char数组的每个元素,例如:

private static int TEN_UNITS = 10;

public static void main(String[] args) {
    char input[] = {5, 9, 4, 1, 0, 8};
    int result = joinIntChars(input);
    System.out.println("Single integer: " + result);
}

private static int joinIntChars(char[] myArr) {
    int sum = 0;
    for (char c : myArr) {
        sum = (sum * TEN_UNITS); // each element of the array is multiplied by 10
        sum += c; // now this will sum the next char value to the previous result
    }
    return sum;
}

<强>输出:

Single integer: 594108