java统计句子单词个数
时间: 2023-09-11 16:11:25 浏览: 243
以下是 Java 代码,可以用于统计句子中单词的个数:
```java
public class WordCount {
public static void main(String[] args) {
String sentence = "This is a sample sentence.";
int wordCount = 0;
// Split sentence into words
String[] words = sentence.split(" ");
// Count the number of words
for (String word : words) {
wordCount++;
}
System.out.println("Word count: " + wordCount);
}
}
```
在上面的代码中,我们首先定义了一个字符串 `sentence`,它包含要统计单词数的句子。然后,我们使用 `split()` 方法将句子拆分成单词,并将这些单词存储在一个字符串数组 `words` 中。最后,我们使用一个循环来计算单词数,将每个单词计入 `wordCount` 变量中。最后,我们输出 `wordCount` 变量的值,即句子中单词的个数。
相关问题
java统计英文句子中的单词个数
在 Java 中统计英文句子中的单词个数,通常可以采用以下步骤:
1. **准备字符串**:首先,你需要将输入的英文句子存储在一个 `String` 变量中。
```java
String sentence = "This is a sample sentence for word count.";
```
2. **移除标点和空格**:使用正则表达式可以去除句子中的标点符号和多余的空格。你可以创建一个新的字符串,只包含字母和数字。
```java
String cleanedSentence = sentence.replaceAll("[^a-zA-Z0-9\\s]", "").toLowerCase();
```
这里我们使用了 `replaceAll` 函数,第一个参数是一个正则表达式匹配非字母、非数字和非空格的字符,第二个参数是替换它们为空字符串。
3. **分割成单词数组**:接下来,我们将清洗后的字符串按空格分割成单词数组。
```java
String[] words = cleanedSentence.split("\\s+");
```
`split("\\s+")` 分割字符串,`\s+` 表示一个或多个连续的空格。
4. **计数单词**:遍历数组并累加单词数量。
```java
int wordCount = words.length;
```
5. **结果输出**:最后,输出单词总数。
```java
System.out.println("The sentence contains " + wordCount + " words.");
```
完整代码如下:
```java
public class Main {
public static void main(String[] args) {
String sentence = "This is a sample sentence for word count.";
String cleanedSentence = sentence.replaceAll("[^a-zA-Z0-9\\s]", "").toLowerCase();
String[] words = cleanedSentence.split("\\s+");
int wordCount = words.length;
System.out.println("The sentence contains " + wordCount + " words.");
}
}
```
java统计字符串中单词个数_java统计字符串单词个数的方法解析
要统计一个字符串中单词的个数,可以采用以下方法:
1. 将字符串转换为字符数组,方便遍历每个字符。
2. 定义一个计数器,用于统计单词的个数。
3. 遍历字符数组,遇到非空格字符时判断是否为单词的开头,如果是,则计数器加1。
4. 如果当前字符是空格,判断下一个字符是否是单词的开头,如果是,则计数器加1。
5. 遍历完整个字符数组后,计数器的值即为单词的个数。
下面是Java代码示例:
```
public static int countWords(String str) {
if (str == null || str.isEmpty()) {
return 0;
}
char[] chars = str.toCharArray();
int count = 0;
boolean isWord = false;
for (int i = 0; i < chars.length; i++) {
if (chars[i] != ' ') {
if (!isWord) {
isWord = true;
count++;
}
} else {
isWord = false;
if (i < chars.length - 1 && chars[i + 1] != ' ') {
count++;
}
}
}
return count;
}
```
该方法首先判断字符串是否为空,如果为空则返回0;然后将字符串转换为字符数组,遍历字符数组,根据空格判断单词的开头和结尾,从而统计单词的个数。
阅读全文