0
내 코드는 문자열 입력을 분리하여 구분하고 특정 문자가있는 문자를 찾은 다음 인쇄합니다. 이제는 같은 단어가 한 번만 인쇄되도록하고 싶습니다. 예를 들어, 입력이 "멋져 보이면 그녀는 친절합니다." 그러면 출력은 "she \ n nice"가 될 것입니다. 이것은 현재 코드입니다.문자열에서 같은 단어를 확인하는 방법은 무엇입니까?
Scanner kybd = new Scanner(System.in);
String s = kybd.nextLine();
String[] arr = s.split(" ");
for (String ss : arr) {
String []ary = {ss};
for(int i = 0; i < ary.length; i++){
int numindex = ss.indexOf("e");
int numindex2 = ss.indexOf("E");
if (numindex != -1){
System.out.println(ary[i]);
}
else if(numindex2 != -1){
System.out.println(ary[i]);
}
}
}
이 작업을 수행하는 방법에 대한 제안은 만족 스러울 것입니다.
사용할 수 있습니다 단어에서 문장 순서 (저장) ArrayList에와 (이전의 존재를 테스트 용) HashSet의 유지하기 위해; 효율성에 대한 우려가 없다면 (작은 목록은 없을 것입니다.) List.contains는 존재 테스트에 충분할 것이고 (Set는 건너 뛸 수 있습니다.) 수동 배열보다 훨씬 쉬울 것입니다. – user2864740
아니요, 주문을 유지하기 위해 TreeSet을 사용합니다. 최소한이 시나리오에서. http://docs.oracle.com/javase/7/docs/api/java/util/TreeSet.html –
오, 확인. 나는 당신의 의견을 오해했습니다. 어쩌면 당신은 당신의 코멘트에 삽입 명령을 언급하는 것을 언급해야합니다. 그래, 좋아. –