从字符串android java解析整数

时间:2011-09-09 10:48:44

标签: java android parseint

您好我得到以下代码,我用来从字符串中获取一些整数。如果索引处的字符是“ - ”,我可以通过将字符串与下一个数字组合成功地分离负整数和正整数,并且我可以将数字放在整数数组中...

   //degree is the String i parse

   String together="";
      int[] info=new int[degree.length()];
      int counter=0;

       for (int i1 = 0; i1 < degree.length(); i1++) {

         if (Character.isSpace(degree.charAt(i1))==false){ 
            if (Character.toString(degree.charAt(i1)).equalsIgnoreCase("-")){
                together="-";
                             i1++;

            }
             together = together + Character.toString(degree.charAt(i1));

            info[counter]=Integer.parseInt(together);
         }
         else if (Character.isSpace(degree.charAt(i1))==true){
             together ="";
            counter++;
         }

但是我去了这个奇怪的问题....字符串看起来就像“4 -4 90 70 40 20 0 -12”并且代码解析并将整数放入数组只有“0”数字我的意思除了最后一个“-12”数字之外,我把所有数字的负数和正数都加到我的数组中...任何想法?

1 个答案:

答案 0 :(得分:2)

我认为对您的问题有一个更简单的解决方案:

// First split the input String into an array,
// each element containing a String to be parse as an int
String[] intsToParse = degree.split(" ");

int[] info = new int[intsToParse.length];

// Now just parse each part in turn
for (int i = 0; i < info.length; i++)
{
    info[i] = Integer.parseInt(intsToParse[i]);
}