스캐너를 사용하여 파일의 입력을 읽으려고하지만 스캐너가 모든 것을 무시하도록합니다 (* ....... *). 어떻게해야합니까? 정수를 가져 와서 배열 목록에 추가하고 있습니다. 그러나 텍스트 안에 정수가 있으면 무시하고 싶습니다.스캐너가 특정 패턴 사이의 단어를 무시하도록하는 방법
public ArrayList<Integer> readNumbers(Scanner sc)
{
// TODO Implement readNumbers
ArrayList<Integer> list = new ArrayList<Integer>();
while(sc.hasNext())
{
try
{
String temp = sc.next();
list.add(Integer.parseInt(temp));
}
catch(Exception e)
{
}
}
return list;
}
다음은 텍스트 파일 4802740
내 배열 목록에 21 4802740를 추가
(2013 *에서 * 21 알라바마 인구)의 예 선이다. 사용에 대해 생각했습니다. sc.usedelimiter ("("); sc.usedelimiter (")"); 그러나 나는 그것을 작동시킬 수없는 것 같습니다. 감사합니다.
입력 내용이 모두 같은 패턴입니까? 그래서 (* 2013 Los Angles in * 2013) 4802743이 맞습니까? –
시작이나 끝 부분에'(* ... *)'부분에'*'가있을 수 있습니까? – Pshemo
'21'과 '4802740을 내 배열 목록에 추가하겠다'는 의미를 설명 할 수 있습니까? '2013'이 아닌 '21'이 결과에 포함되어야하기 때문입니다. 그렇게한다면 당신은 그것을 설명 할 어떤 논리를 우리에게 줄 수 있습니까? – Pshemo