java - 使用子字符串拆分字符串

标签 java string substr

我正在制作一个简单的运动模拟器。一开始,您必须以格式输入两支球队(CityName TeamName,例如 Chicago Bulls)。我使用两种方法从初始名称中获取城市名称和团队名称,因此我可以在不同的地方调用它们以获得更自然的输出。

public String getLocation(String teamName){
    String location = this.name.substring(0, this.name.indexOf(" "));
    return location;
}

public String getFirstName(String teamName){
    String name = this.name.substring(this.name.indexOf(" "));
    return name;
}

获取位置的第一种方法工作正常。第二个获取团队名称的方法每次都返回 null。关于为什么我得到不同的结果,我无法弄清楚我在这两个方面做了什么不同的事情。

编辑:

这是实现这些方法的行:

    System.out.println("The " + TeamX.getFirtName(TeamX.getName()) + " are visting from " + TeamX.getLocation(TeamX.getName()) + " to play the " + TeamY.getFirtName(TeamY.getName()) + " in " + TeamY.getLocation(TeamY.getName()) );

当“NYC Jets”和“Arizona Cardinals”出现时,它的输出是:

The null are visting from NYC to play the null in Arizona

最佳答案

我认为这个问题是因为在函数中你调用的是 this.name 上的子字符串,而不是局部变量 teamName:

public String getLocation(String teamName){
   return teamName.substring(0, teamName.indexOf(" "));
}

public String getFirstName(String teamName){
    return teamName.substring(teamName.indexOf(" "));
}

关于java - 使用子字符串拆分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36972270/

相关文章:

java - 是否可以将magento数据库映射到java中的hibernate类?

python - 检查字符串是否包含两个相同字符的方法?

c++ - 使用循环将字符串拆分为特定长度的子单元

如果字符串重复,Javascript 替换子字符串将无法正常工作

language-agnostic - substring() 应该如何工作?

java - 解析全名?

java - 从流中读取关键字的正确方法

java - JTable - 显示为复选框的 boolean 值并且必须是可编辑的

javascript - 尝试清除大内容中双引号中的空白

java - 用于根据 token 拆分数组的正则表达式