字符串输入,解析,拆分

时间:2013-04-10 21:06:21

标签: java

我需要编写一个程序,让用户输入一次字符串日期(例如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 个答案:

答案 0 :(得分:6)

当你分割一个字符串时,你没有得到一个字符串,你得到一个字符串数组。所以你需要打电话

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

然后你可以用

来获得你的月和日
int mm = Integer.parseInt(k2[0]);
int dd = Integer.parseInt(k2[1]);

答案 1 :(得分:4)

String[] tokens = k.split("/");
int mm = Integer.parseInt(tokens[0]);
int dd = Integer.parseInt(tokens[1]);

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

答案 2 :(得分:3)

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

String[] strings = k.split("/");
int mm = Integer.parseInt(strings[0]);
int dd = Integer.parseInt(strings[1]);

答案 3 :(得分:2)

甚至

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

然后你不需要解析整数