首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从Java中的多个方法获取用户输入的最佳实践?

从Java中的多个方法获取用户输入的最佳实践?
EN

Stack Overflow用户
提问于 2020-04-07 22:27:28
回答 1查看 490关注 0票数 0

我有一个相对基本的程序,在这个程序中,我有几种方法从用户那里获得输入(使用Scanner对象)。我希望看到这些技术中的哪一种(如果有的话)被认为是标准的还是最佳的。这里,我将使用一种方法作为示例。

  1. 分别在每个方法中创建一个新的扫描器对象:

代码语言:javascript
复制
// Get date from user
public static LocalDate getDateFromUser(String date_request_label){

    Scanner inputScan = new Scanner (System.in);

    System.out.print(date_request_label + " (YYYYMMDD): ");
    String input_string = inputScan.nextLine();

    // Split input into year/month/day
    int year  = Integer.parseInt(input_string.substring(0,4));
    int month = Integer.parseInt(input_string.substring(4,6));
    int day   = Integer.parseInt(input_string.substring(6,8));

    return LocalDate.of(year,month,day);
}

  1. 在main中创建单个扫描器对象,并在每个方法中调用它:

代码语言:javascript
复制
// Get date from user
public static LocalDate getDateFromUser(Scanner inputScan, String date_request_label){
    System.out.print(date_request_label + " (YYYYMMDD): ");
    String input_string = inputScan.nextLine();

    // Split input into year/month/day
    int year  = Integer.parseInt(input_string.substring(0,4));
    int month = Integer.parseInt(input_string.substring(4,6));
    int day   = Integer.parseInt(input_string.substring(6,8));

    return LocalDate.of(year,month,day);
}

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-07 22:31:34

如果不降低代码的可读性,则IMHO重用对象是可取的。

所以我会选择第二种。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61090393

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档