2014-10-21 80 views
-6

嘿傢伙希望你能幫助我。 想從這個代碼得到所有的整數,只是留下的信件,在這裏從字符串整數

public class Tie { 

    public static void main(String agrs[]){ 
     String fr = "4544FF"; 
     int yu = fr.length(); 
     System.out.print(yu); 

    } 

} 
+5

那......看起來並沒有太多努力。你試過什麼了? – 2014-10-21 22:38:14

+1

如何獲取長度並將其打印出來可以完成您想要做的事情? – 2014-10-21 22:39:29

+0

你能澄清嗎?你的意思是輸入是「4544FF」,輸出應該是「FF」?或者你的意思是什麼? – 2014-10-21 23:00:34

回答

-1

試試這個代碼

import java.util.ArrayList; 
import java.util.List; 
import java.util.regex.Matcher; 
import java.util.regex.Pattern; 

public class Tie { 

    public static void main(String agrs[]){ 
     Tie tie = new Tie(); 
     String fr = "4544FF"; 
     char[] strings = fr.toCharArray(); 
     List<Integer>integers = new ArrayList<Integer>(); 
     for(int i=0;i<strings.length;i++){ 
      if(tie.validationNumber(strings[i]+"")){ 
       integers.add(Integer.parseInt(strings[i]+"")); 
      } 
     } 
     for(Integer i:integers){ 
      System.out.println(i); 
     } 
    } 

    public boolean validationNumber(String s){ 

     Pattern pattern = Pattern.compile("\\d+"); 
     Matcher matcher = pattern.matcher(s); 

     if (matcher.matches()) { 
      return true; 
     } 
     return false; 
    } 
} 
1

很認真地丟失,如果你只希望從字符串中刪除幾個數字,使用正則表達式和替換,用正則表達式「 d'你可以過濾所有數字。

String fr = "4544FF"; 
fr = fr.replaceAll("\\d",""); 
//result should be that fr now is contains only "FF", because the digits have bee replaced with nothing. 

我沒有測試它,但它應該工作,如果我用正則表達式的小經驗,提供我的權利。

0

你可以做的就是用這個方法子(INT開始,詮釋決賽)。

public static void main(String agrs[]){ 
    String fr = "4544FF"; 

    String numbers= fr.substring(0, 4); 
    String letters= fr.substring(4); 

    System.out.println("It will shows 4544" + numbers); 

    System.out.println("It will shows FF" + letters); 

    int convertNumber = Integer.parseInt(numbers); //Convert to int 

    System.out.println("" +convertNumber); 

} 

它會告訴你只有編號4544.

我希望解決您的問題。