在 Java 中使用 split 方法拆分字符串

数组经常用于计算机程序中,可以说几乎所有程序都包含不同类型的数组。结构。最简单的是 结构 连续 其中除加法外的所有操作均按顺序完成。这 移除 用 a 交通方式 直接但开 必备 做 偏移量 其他元素.
计算单词频道 字符字符意味着搜索空间”字符。Java 让我们的工作变得更容易,这就是我们注意到面向对象的优势的地方,有一个函数 预定义 split divide in English.

split 方法采用正则表达式作为输入。它分裂了这个频道 根据给定的正则表达式,它返回一个数组它包含子字符串。如果表达式不匹配 频道 搜索结果数组只有一个元素。


如果我们想除以 频道 下一篇: I.am.a.programmer 分离者 点,我们应该写成 split("\\.") 和 not (split("."false)。仅仅因为我们说过 split 方法将正则表达式作为输入。如果您没有任何知识,只需在互联网上查看即可。我直接给你链接: 


java 中带有正则表达式的正则表达式

在我们的例子中,我们不需要大东西。我们想计算以一相隔的单词数”空间 在 a 频道 的字符。它存在 实现此目的的两种方法:

1- 函数 split

split 方法将输入到  要处理并输出的字符串必须返回 字数:

int numberwords(字符串 string)

我们宣布一幅画 String[] 字; 来存储子字符串。后者接收通过 split:

words=string.split();

最后,返回表单词的长度:

返回 mots.length;

2- 没有 split

这种方法似乎更长,但事实并非如此必要 由于 Java 已经具有预定义的 Split 函数。对于那些 想要火车。

我们声明一个单词计数器和一个字符。


int n=0;
char c;

然后我们阅读  的所有字符;频道 我们测试其中之一是一个空格,不计算句子开头和结尾的空格。如果是,则递增 counter.


forint i = 0;我<字符串.length();i++){
  c = chain.charAt(i);
   if(i!=0 &&i!=string.length()-1)
    if(c==' '
  n++;
}

最后,如果 频道 input 为空且等于 1 如果 表达式不对应于 频道 searched.

如果是 优越 到 1 表示至少有一个空格。

if(n>1)
 n++;

示例

我是程序员 ”
我们加 1 是因为我们计算了中间的空格。words( 每两个单词之间有一个空格).

public class WordNumberString {

//带有预定义函数 split
static int numberwords(String string){
int n=0;
字符串[] 字;
//split 将字符串拆分为一组单词
//如果有空格并将它们放在数组中
words = string.split( ”);
返回 words.length;
}

//不带预定义函数 split
static int nombremots_naive(String string){
int n=0;
char c;
//浏览整个字符串
for(int i = 0 ; i < string.length() ; i++){
//字符按字符
c = string.charAt(i);
//避免计算空格
//开头和结尾
//example: 我是程序员”
//如果我们去掉这个测试,即使我们有4个单词,单词数
//也会是6个.
if(i!=0 &&i!=string.length()-1)
if(c==' ')
n++;
}
//如果字符串不为空
//我们添加 1 因为我们
//计算单词之间的空格
//单词,即如果我们有 3 个空格
///那么我们将有 4 个单词
if(n>1)
n++;
返回 n;
}

public static void main(String[] args) {
String string=我是程序员”;
System.out.println(nombremots_naive(字符串));
}
}