2013-04-10 195 views
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); 

回答

6

当你分割一个字符串,你没有得到一个字符串,你会得到一个字符串数组。所以,你需要调用

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

那么你可以得到你的月和日与

int mm = Integer.parseInt(k2[0]); 
int dd = Integer.parseInt(k2[1]); 
3
String#split

返回String阵列。你需要使用返回数组的元素:

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

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

2

甚至

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

,然后你不需要解析整数