2013-04-10 191 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(); 

,然後你不需要解析整數