我需要编写一个程序,让用户输入一次字符串日期(例如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);
答案 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();
然后你不需要解析整数