1

我需要编写一个程序,让用户输入一次字符串日期(例如 10/21),然后将该字符串转换为整数。我想在解析之前需要拆分?

import java.util.Scanner;
public class ConvertDates {
   public static void main(String[] args) {
      Scanner input = new Scanner(System.in);
      System.out.print("Please input a date (mm/dd): ");
      String k = input.next();
      k = String.split("/");
      int mm = Integer.parseInt(k);
      int dd = Integer.parseInt(k);
4

4 回答 4

6

当你拆分一个字符串时,你不会得到一个字符串,你会得到一个字符串数组。所以你需要打电话

String[] k2 = k.split("/"); 

然后你可以得到你的月份和日期

int mm = Integer.parseInt(k2[0]);
int dd = Integer.parseInt(k2[1]);
于 2013-04-10T21:08:56.170 回答
4
String[] tokens = k.split("/");
int mm = Integer.parseInt(tokens[0]);
int dd = Integer.parseInt(tokens[1]);

由于split()方法返回字符串数组,因此您必须使用上面的代码。

于 2013-04-10T21:09:25.813 回答
3

String#split返回一个String数组。您需要使用返回数组的元素:

String[] strings = k.split("/");
int mm = Integer.parseInt(strings[0]);
int dd = Integer.parseInt(strings[1]);
于 2013-04-10T21:08:29.080 回答
2

甚至

   Scanner dates = new Scanner(k);
   dates.useDelimiter("/");
   int mm = dates.nextInt();
   int dd = dates.nextInt();

然后你不需要解析整数

于 2013-04-10T21:13:12.720 回答