Метод который вернет количество слов в строке текста

package sample;

import java.util.Scanner;

public class Homework27 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner sc = new Scanner(System.in);
		
		System.out.println("Введите предложение:");
		String a = sc.nextLine();
				
		System.out.println("Число слов в вашем предложении:" + words (a));
		
	}
	public static int words (String text) {
		String[] array = text.split("[ ]");
		int res = 0;
		for (int i = 0; i < array.length; i++) {
			res = res + 1;
		}
		return res;
	}

}

Решение хоть и верное но не рациональное. Вы же можете сразу узнать длину массива. Зачем там еще циклом считать?

Так верно?

package sample;

import java.util.Scanner;

public class Homework27 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner sc = new Scanner(System.in);
		
		System.out.println("Введите предложение:");
		String a = sc.nextLine();
				
		System.out.println("Число слов в вашем предложении:" + words (a));
		
	}
	public static int words (String text) {
		int res = 0;
		String[] array = text.split("[ ]");
		res = array.length;
				
		return res;
	}

}
1 симпатия

Да так конечно решение верное