将String变量转换为Integer变量的概念是什么?如何做? 示例;
Model.on('method', function(info) {
//var url = ''; if you want to give a link
var html = 'Click <a href="' + url + '">here</a>';
Model.app.models.Emailmodel.send({
to: info.email,
from: senderAddress,
subject: 'your subject',
html: html
}, function(err) {
if (err) return console.log('> error sending email');
console.log('> sending email to:', info.email);
});
});
但我很困惑。那怎么办呢?
答案 0 :(得分:2)
使用String#substring(int, int)
将String
分解为更小的String
,类似于..
String x= "20161012";
System.out.println(x.substring(0, 4));
System.out.println(x.substring(4, 6));
System.out.println(x.substring(6, 8));
哪个输出
2016
10
12
然后,您只需使用Integer.parseInt
将String
值解析为int
值
将String
值解析为LocalDate
对象并从中提取属性
String x = "20161012";
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd");
LocalDate ldt = LocalDate.parse(x, formatter);
System.out.println(ldt.getYear());
System.out.println(ldt.getMonthValue());
System.out.println(ldt.getDayOfMonth());
哪些输出......
2016
10
12
您可能会使用的将取决于您最终要实现的目标
答案 1 :(得分:1)
String x="20161012";
使用x.substring
获取子字符串并应用Integer.parseint
如果有分隔符,则使用字符串split方法来解析整数
答案 2 :(得分:0)
你好我假设你总是字符串是日期和格式相同
Calendar mydate = new GregorianCalendar();
String mystring = "20161012";
Date thedate = new SimpleDateFormat("yyyyddmm",Locale.ENGLISH).parse(mystring);
System.out.println("year -> "+mydate.get(Calendar.YEAR));
System.out.println("month -> "+mydate.get(Calendar.MONTH));
// month index start from 0 i.e Jan is 0
System.out.println("dom -> "+mydate.get(Calendar.DAY_OF_MONTH));
答案 3 :(得分:0)
使用Integer.parseInt("20161012");
可以将java中的String转换为Integer
这将为您提供一个值为 20161012 的整数。
正如我在您的问题中所看到的,您正在处理一个日期,您需要将其分为年,月和日。我建议使用 java.util.Calendar 类,并使用以下代码从String中解析它
String str ="20161012";
Calendar calendar = Calendar.getInstance();
calendar.setTime(new SimpleDateFormat("yyyyMMdd").parse(str));
int x = calendar.get(Calendar.YEAR);
int y = calendar.get(Calendar.MONTH)+1; //Because months start with 0 instead of 1
int z = calendar.get(Calendar.DAY_OF_MONTH);