如何将 String.split 转换为 int
How do I convert String.split to int
String nDate;
String dateTemp;
int i;
nDate = kb.nextLine();
String[] temp = nDate.split("-");
int numDate = Integer.parseInt(String.valueOf(temp));
我对最后一行中的 (temp) 部分有疑问。例如,如果我的输入是“06-21-2020”,我希望它变成“06212020”
使用 replace()
而不是 split()
。为了进一步解释,String.valueOf()
不采用 String
的数组。
String temp = nDate.replace("-","");
int numDate Integer.parseInt(temp);
java.time
可以满足您的特定要求。
但是,我建议您将日期字符串解析为 LocalDate
并根据需要设置格式。
您将获得比所需转换更多的收益,例如想想在 06-21-2020 上找到当天的名称,或者转换为其他格式,例如2020 年 6 月 21 日,星期日。所有这些要求都可以使用内置的 API 轻松完成,如以下演示所示:
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.Locale;
public class Main {
public static void main(String[] args) {
String nDate = "06-21-2020";
DateTimeFormatter dtfInput = DateTimeFormatter.ofPattern("MM-dd-uuuu", Locale.ENGLISH);
LocalDate date = LocalDate.parse(nDate, dtfInput);
DateTimeFormatter dtfOutput1 = DateTimeFormatter.ofPattern("MMdduuuu", Locale.ENGLISH);
DateTimeFormatter dtfOutput2 = DateTimeFormatter.ofPattern("dd/MM/uuuu", Locale.ENGLISH);
DateTimeFormatter dtfOutput3 = DateTimeFormatter.ofPattern("EEE dd MMM uuuu", Locale.ENGLISH);
System.out.println(dtfOutput1.format(date));
System.out.println(dtfOutput2.format(date));
System.out.println(dtfOutput3.format(date));
}
}
输出:
06212020
21/06/2020
Sun 21 Jun 2020
了解有关现代日期时间 API 的更多信息
String nDate;
String dateTemp;
int i;
nDate = kb.nextLine();
String[] temp = nDate.split("-");
int numDate = Integer.parseInt(String.valueOf(temp));
我对最后一行中的 (temp) 部分有疑问。例如,如果我的输入是“06-21-2020”,我希望它变成“06212020”
使用 replace()
而不是 split()
。为了进一步解释,String.valueOf()
不采用 String
的数组。
String temp = nDate.replace("-","");
int numDate Integer.parseInt(temp);
java.time
但是,我建议您将日期字符串解析为 LocalDate
并根据需要设置格式。
您将获得比所需转换更多的收益,例如想想在 06-21-2020 上找到当天的名称,或者转换为其他格式,例如2020 年 6 月 21 日,星期日。所有这些要求都可以使用内置的 API 轻松完成,如以下演示所示:
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.Locale;
public class Main {
public static void main(String[] args) {
String nDate = "06-21-2020";
DateTimeFormatter dtfInput = DateTimeFormatter.ofPattern("MM-dd-uuuu", Locale.ENGLISH);
LocalDate date = LocalDate.parse(nDate, dtfInput);
DateTimeFormatter dtfOutput1 = DateTimeFormatter.ofPattern("MMdduuuu", Locale.ENGLISH);
DateTimeFormatter dtfOutput2 = DateTimeFormatter.ofPattern("dd/MM/uuuu", Locale.ENGLISH);
DateTimeFormatter dtfOutput3 = DateTimeFormatter.ofPattern("EEE dd MMM uuuu", Locale.ENGLISH);
System.out.println(dtfOutput1.format(date));
System.out.println(dtfOutput2.format(date));
System.out.println(dtfOutput3.format(date));
}
}
输出:
06212020
21/06/2020
Sun 21 Jun 2020
了解有关现代日期时间 API 的更多信息