利用正则表达式就很容易进行判断,然后移动相应的坐标,最后返回即可。

  具体代码如下:

  

 1 import java.util.ArrayList;
 2 import java.util.Scanner;
 3 import java.util.regex.Pattern;
 4 
 5 public class Main {
 6     public int [] get(String [] locate){
 7         int [] res = new int[2];
 8         res[0] = 0;
 9         res[1] = 0;
10 //        Pattern p = Pattern.compile("[ADWS]\\d{1-2}");
11         for(int i=0;i<locate.length;i++){
12             if(locate[i].matches("[ADWS]\\d{1,2}")){
13                 int num = Integer.valueOf(locate[i].substring(1));
14                 char begin = locate[i].charAt(0);
15                 switch(begin){
16                 case 'A':res[0]-=num;
17                          break;
18                 case 'D':res[0]+=num;
19                          break;
20                 case 'W':res[1]+=num;
21                          break;
22                 case 'S':res[1]-=num;
23                          break;
24                 }
25             }
26         }
27         return res;
28     }
29     /**
30      * @param args
31      */
32     public static void main(String[] args) {
33         // TODO Auto-generated method stub
34         Main m = new Main();
35         Scanner scanner = new Scanner(System.in);
36         String input = scanner.nextLine();
37         String [] operates = input.split(";");
38         int [] locates = m.get(operates);
39         System.out.println(locates[0]+","+locates[1]);
40     }
41 }