繁体   English   中英

如何在Java中使用indexOf(int ch)

[英]How to use indexOf (int ch) in java

我正在尝试获取字符串中字符的索引号,以将字符串分为子字符串。 示例:我想转:

String book1 = "green eggs and ham, usa, dr. seuss";

变成:

green eggs and ham
usa
dr. seuss

这必须适用于不同长度的字符串。 基本上,如果我使用其他单词,它将仍然有效。

我需要帮助来理解indexOf()方法,以获取要放入子字符串中的逗号索引。

我已经尝试在indexOf之后的方法调用中使用变量,但是当我使用除int之外的任何东西时都会出错。

我不太确定您的实际需求,但是您可以尝试很多方法:

  • 使用split(String)方法拆分字符串并将其存储为String数组
  • 使用StringTokenizer在特定定界符上标记化您的字符串,并使用nextToken()获取标记。 请注意,StringTokenizer是一个遗留类,出于兼容性原因保留,尽管在新代码中不鼓励使用它
  • 第三种选择是通过Pattern使用正则表达式

选择适合您需求的产品。

使用拆分。

"green eggs and ham, usa, dr. seuss".split(", ");

请参阅: String.split

如果允许使用它,那么split()方法正是您所需要的。

否则,如果只需要使用indexOf() ,请查看String APIJava API文档以了解其工作原理。 我注意到的第一件事是存在indexOf()三种不同版本: indexOf(int)indexOf(int, int)indexOf(String) 我相信其中的第二点将最适用于此问题。 由于文档指出此版本的indexOf() “返回指定字符首次出现的字符串中的索引,从指定索引处开始搜索,”您很可能需要某种类型的循环才能找到每次出现一个字符。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM