转义
split()分割时注意"."需要转义。
Java中char 转化为int 的两种方法
不能直接转换,那样得到的是ASCII码。
方法一: 先把char转为char[1]的数组,然后转为string,最后利用Integer中parserInt方法,此方法要创建多个对象,要消耗许多内存。
方法二: 利用char的封装类 character, 通过如下静态方法就可以直接实现。
public class IntAndCharConvertor {
public static void main(String[] args) {
//得到的是ASCII码
char numChar = '9';
int intNum = (int)numChar;
System.out.println(numChar + ": " + intNum);
//method 1:
char[] charArray = {numChar};
intNum = Integer.parseInt(new String(charArray));
System.out.println("method 1: " + numChar + ":" + intNum);
//method 2:
System.out.println("method 2: " + numChar + ":" + Character.getNumericValue(numChar));
}
}实现代码:
import java.util.*;
import java.lang.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
String[] s = str.split("\\.");
// System.out.println(s[1]);
Character c = s[1].charAt(0);
int tmp = Character.getNumericValue(c);
if (tmp >= 5 ) {
System.out.print(Integer.valueOf(s[0]).intValue() + 1);
}else{
System.out.print(Integer.valueOf(s[0]).intValue());
}
}
}
京公网安备 11010502036488号