我正在做一项让我感到困惑的作业。它要求我编写一个名为 processName() 的方法,该方法接受控制台的 Scanner 作为参数,并提示用户输入全名,然后首先打印姓氏,最后打印名字。例如,如果我输入“Sammy Jankins”,它将返回“Jankins, Sammy”。
我的计划是使用 for 循环遍历字符串,找到一个空白空间,并从中创建两个新字符串 - 分别代表名字和姓氏。但是,我不确定这是否是正确的道路以及如何准确地做到这一点。任何提示将不胜感激,谢谢。
这是我到目前为止所拥有的:
import java.util.*;
public class Exercise15 {
public static void main(String[] args) {
Scanner inputScanner = new Scanner(System.in);
processName(inputScanner);
}
public static void processName(Scanner inputScanner) {
System.out.print("Please enter your full name: ");
String name = inputScanner.next();
System.out.println();
int n = name.length();
String tempFirst;
for (int i = 0; i <= name.length()-1; i++) {
// Something that checks the indiviual characters of each string to see of " "exists
// Somethow split that String into two others.
}
}
}
最佳答案
为什么不简单地使用 String#split
?
我不会为你解决这个问题,但你应该这样做:
-
split
根据空格。 - 检查数组的大小是否为 2。
- 如果是,则打印第二个元素,然后打印第一个元素。
提示:查看API可以节省大量的精力和时间。
关于java - 获取字符串的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18842281/