题目描述:
输入一行字符,统计其中有多少个单词,单词之间以空格分隔。
输入:
一行英文字符(含空格)。
输出:
单词的个数,单独占一行。
样例输入:
I am a boy
样例输出:
4
package cn.test.little;
import java.util.Scanner;
/**
* 题目描述:
输入一行字符,统计其中有多少个单词,单词之间以空格分隔。
输入:
一行英文字符(含空格)。
输出:
单词的个数,单独占一行。
样例输入:
I am a boy
样例输出:
4
* @author Administrator
*
*/
public class WorkCount {
public static void main(String[] args) {
//计数器
int count = 0 ;
System.out.println("输入一系列以空格隔开的字符串");
Scanner sc = new Scanner(System.in);
//忽略字符串头尾的空白
String str = sc.nextLine().trim();
String[] words = str.split(" ");
for(int i = 0 ; i < words.length; i++) {
if(!words[i].equals("")) {
//不为空格时才计数(即只计算单词数)
count++;
}
}
System.out.println("一共有"+count+"组单词");
sc.close();
}
}
相关知识点:Java中split()的用法
Java中split主要用于分隔字符串。
具体分析如下:
1、如果用“.”作为分隔的话,必须是如下写法,String.split("\\."),这样才能正确的分隔开,不能用String.split(".")。
2、如果用“|”作为分隔的话,必须是如下写法,String.split("\\|"),这样才能正确的分隔开,不能用String.split("|"),“.”和“|”都是转义字符,必须得加"\\"。
3、如果在一个字符串中有多个分隔符,可以用“|”作为连字符,比如,“acount=? and uu =? or n=?”,把三个都分隔出来,可以用String.split("and|or")。
扩展资料:
Java中split使用注意事项:
1、要被分解的String对象或文字,该对象不会被split方法修改。
2、字符串或正则表达式对象,它标识了分隔字符串时使用的是一个还是多个字符。如果忽略该选项,返回包含整个字符串的单一元素数组。
3、该值用来限制返回数组中的元素个数(也就是最多分割成几个数组元素,只有为正数时有影响)。
4、split 方法的结果是一个字符串数组,在 stingObj 中每个出现 separator 的位置都要进行分解。separator不作为任何数组元素的部分返回。
那是字符串分割的方法比如有个字符串是这样的 String str = "boo:and:foo";调用它的方法 str.split(":");意思是以“:”分割上面的字符串。返回一个字符串数组,数组里面就是{ "boo", "and", "foo" }
spilt是正则表达式中的一种,用来切分字段。
用法为:字符串.spilt("特定字符"),输出结果为String[]类型。
如:String [] list = "abcabcabc".spilt("b");
那么结果就是“a”,"ca","ca","c";
获取结果可以通过:list.get(下标)的形式(从0开始),如:list.get(3) 的结果就是“c”。