题解 | #坐标移动#
坐标移动
https://www.nowcoder.com/practice/119bcca3befb405fbe58abe9c532eb29
import java.util.*;
import java.io.*;
public class Main{
public static void main(String[] args) throws IOException {
BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
String[] in = bf.readLine().split(";");//分隔字符
int x = 0;
int y = 0;
//确认初始坐标
for(String s : in){//遍历
// 不满足题目给定坐标规则
if(!s.matches("[WASD][0-9]{1,2}")){/*正则过滤
[]用于匹配一组字符中的任意一个。例如,[abc]可以匹配a、b或者c。
还可以用范围表示,如[a-z]匹配小写字母,[A-Z]匹配大写字母,[0-9]匹配数字。
表示前面的元素出现次数在n到m之间(包括n和m)。例如,a{1,3}可以匹配a、aa、aaa。*/
continue;
}
int val = Integer.valueOf(s.substring(1));//截取字符串从1的位置到末尾
switch(s.charAt(0)){
/*用于获取字符串 s 中索引为 0 的字符的方法。例如,如果
s = "hello",那么 s.charAt (0) 将返回 "h"。*/
case 'W':
y += val;
break;
case 'S':
y -= val;
break;
case 'A':
x -= val;
break;
case 'D':
x += val;
break;
}
}
System.out.println(x+","+y);
}
}


