Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
第一部分-Java分割字符串函数_Java_String_Split - Fatal编程技术网

第一部分-Java分割字符串函数

第一部分-Java分割字符串函数,java,string,split,Java,String,Split,我对java还是新手。我有一个基本的拆分字符串函数,如下所示。我需要在拆分后捕获子字符串。我的问题是如何将单独分割的部分移动到单独的变量中,而不是打印它们?我是否需要另一个阵列来分别移动它们?有没有其他更简单的方法来实现这一点?在第一部分中,为了简单起见,我假设分隔符是空格。谢谢你的帮助 public class SplitString { public static void main(String[] args) { String phrase = "First Second T

我对java还是新手。我有一个基本的拆分字符串函数,如下所示。我需要在拆分后捕获子字符串。我的问题是如何将单独分割的部分移动到单独的变量中,而不是打印它们?我是否需要另一个阵列来分别移动它们?有没有其他更简单的方法来实现这一点?在第一部分中,为了简单起见,我假设分隔符是空格。谢谢你的帮助

public class SplitString {

public static void main(String[] args) {

    String phrase = "First Second Third";
    String delims = "[ ]+";
    String[] tokens = phrase.split(delims);
    String first;
    String middle;
    String last;

    for (int i = 0; i < tokens.length; i++)
    {

        System.out.println(tokens[i]);
                //I need to move first part to first and second part to second and so on

    }

}
}
公共类拆分字符串{
公共静态void main(字符串[]args){
字符串短语=“第一第二第三”;
字符串delims=“[]+”;
String[]tokens=phrase.split(delims);
先串;
中弦;
最后一串;
for(int i=0;i
如果您假设您的
字符串是三个单词,那么它非常简单

String first = tokens[0];
String middle = tokens[1];
String last = tokens[2];

array[index]
访问
array
的第x个元素,因此

first = tokens[0];  // Array indices start at zero, not 1.
second = tokens[1];
third = tokens[2];
您应该首先检查长度,如果要拆分的字符串是用户输入,请告诉用户出了什么问题

if (tokens.length != 3) {
  System.err.println(
      "I expected a phrase with 3 words separated by spaces,"
      + " not `" + phrase + "`");
  return;
}

如果已知拆分后将得到的
字符串数
,则可以这样简单地分配变量

 String first = tokens[0];
 String middle = tokens[1];
 String last = tokens[2];

如果令牌的数量未知,那么就没有办法(在我的知识范围内)将每个令牌分配给一个单独的变量。

谢谢大家……大家都以某种方式回答了我。最初我假设输入中只有3个条目,但结果可能会有所不同:)现在我将继续使用3个变量的简单直接赋值,直到我找到另一种方法!谢谢。

String thirdPart=tokens[2]
 String first = tokens[0];
 String middle = tokens[1];
 String last = tokens[2];