사용자가 입력 한 문구에 2 단어 이상이 있는지 찾으려고합니다. 그렇지 않으면 적어도 2 단어로 입력 할 때까지 문구를 입력하라고 계속 요청하십시오.문자열에 적어도 2 단어가 있는지 찾으려고 시도합니다.
내 코드는 다음과 같습니다. 두 단어를 입력했는지 성공적으로 감지 할 수 있으며 두 번째 단어를 처음 입력하지 않으면 성공적으로 감지하지만 두 번째 단어를 두 번째 단어로 다시 입력하면 프로그램이 종료되었습니다.
private static void stringfunctions() {
String phrase;
int count = 0;
Scanner input = new Scanner(System.in);
while (count < 2) {
System.out.println("Please enter a multiple word phrase: ");
phrase = input.nextLine();
String[] arrPhrase = phrase.split(" ");
for (int i = 0; i < arrPhrase.length; i++) {
if (arrPhrase[i].equals(" ")) {
} else {
count++;
}
}
}
숙제로 태그해야합니까? – Marvo
숙제와 같으므로 여기에 힌트가 있습니다. 입력에 별도의 방법으로 적어도 두 단어가 있는지 확인하는 논리를 만드십시오. 사용하기가 더 쉬울 것입니다. 또한 탭 문자와 같은 내용을 무시할뿐만 아니라 순서대로 여러 공백을 오 탐지 할 수 있음을 명심하십시오. 당신은 정규식을 들여다보고 그들과 놀고 당신이 당신의 criterium을 발견하는 regexp를 생각해 낼 수 있는지보기를 원할 것입니다. –
두 개 이상의 공백 문자로 나눌 수 있도록 정규식을 검색하고 싶을 것입니다. 그 시점에서, 당신은 카운트를 할 필요가 없습니다, 당신은 그냥 배열의 크기 (루프를 제어하는 부울 변수를 사용해야합니다 -'inputTwoWords' 또는 뭔가)의 단어의 수를 감지 할 수 있어야합니다. 또한 사용자가 두 번째로 입력 할 단어가 1 단어 만 입력해야하는 이유에 대해 생각해보십시오. 프로그램을 종료시키는 원인이 될 수 있습니다. –