2014-02-16 153 views
-3

我必須編寫一個程序,必須讀取一組字符串中的13個卡,並輸入如C3567JD798S4H687(C代表俱樂部,D代表鑽石,S代表黑桃,H代表紅心)和輸出需要在不同的線路上分開每個套裝,所以在一條線上,你將有C3567J和下一個你將有D798等。計數數字和字母

我不是很確定如何讓程序識別西裝的結束時間開始一個新的計數,一旦它讀取一個D或S.

到目前爲止,我只想到如何分離字母和數字,我認爲這將是第一步。

這裏是我的代碼:

import java.io.* ; 
public class Cards 
{ 

    public static void main (String[] args) throws IOException 
    { 
     BufferedReader objReader = new BufferedReader (new InputStreamReader (System.in)); 


    System.out.print("Enter cards:"); 
    String cards = objReader.readLine(); 

      Test obj = new Test (cards); 
      String gC = obj.GetCards(); 
      String gN = obj.GetNumber(); 

    System.out.println("Letters" + suitC); 
    System.out.println("Numbers" + numbers); 
    } 
} 
class Test 
    { 
    private String suitC = ""; 
    private String numbers = ""; 

    Test (String sC, String n) 
    { 
     suitC = sC; 
     numbers = n; 
    } 
    private void Separation(String s) 
    { 
     for (int i = 0; i < s.length(); i++) 
     { 
     char a = s.charAt(i); 
     if (Character.isDigit(a)) 
     { 
      suitC = suitC + a; 
     } 
     else 
     { 
      numbers = numbers + a; 
     } 
     } 
    } 

    String GetSuitC() 
    { 
     return suitC; 
    } 
    String GetNumber() 
    { 
     return numbers; 
    } 
    } 
+1

您的文章沒有任何具體問題。 – Smutje

+0

它甚至沒有編譯。 – qqilihq

回答

0

你不一定要分開數字和字母。把整件事看作一串。嘗試搜索適合的字母,然後打印子字符串直到該點。現在下一個子字符串從最後一個結束處開始。