代码如下:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
double d = scanner.nextDouble();
System.out.println(Main.typeConversion(d));
}
public static int typeConversion(double d){
//write your code here......
return (int)d;
}
}
数据类型使用细节及易错点
整型使用细节
- Java各整型类型有固定的范围和字段长度,不受具体操作系统的影响,以保证Java程序的可移植性。
- Java的整型常量默认为int型,声明long型常量必须后加"l"或"L".
int n1 = 1;
错误案例:
//int n2 = 1L;不能从long型转换成int型
- Java程序中变量声明为int型,除非不足以表示大数,才使用long型。
- bit:计算机中的。
byte:计算机中的。
1 byte = 8 bit
浮点型使用细节
- Java的浮点型常量默认为double。
- 浮点数在机器中的存放形式:浮点数+符号位 + 指数位 + 尾数位【尾数部分可能丢失,造成精度损失(小数都是近似值)】
- 与整数类型相似,Java浮点类型也有固定的范围和字段长度,不受具体操作系统的影响。
- 浮点型常量有两种表示形式
十进制数形式:如 5.12 5.12f .512
科学计数法形式: 如 5.121e2 - 通常情况下,应该使用double型,因为它比float型更加精确。
- 浮点数使用陷阱:2.7和8.1/3的比较
字符类型(char)使用细节
-
字符常量是用(’ ')括起来的单个字符。
注:如果用双引号,则表示String字符串。 -
Java中允许使用转义字符’'来将后面的字符转变位特殊字符型常量。
例如:char c = '\n'
【\n表示换行符】 -
。
-
。
-
。
布尔类型使用细节
布尔类型(Boolean)数据只允许取值true和false,无null。
基本数据类型转换易错点
-
有多种类型的数据混合运算时,系统首先自动将所有数据转换成的那种数据类型,然后进行计算。
-
当我们把精度(容量)大的数据类型赋值给精度(容量)小的数据类型时,就会报错。反之就会进行自动类型转换。
-
byte、short和char之间不会相互自动转换。
当把具体数赋给 byte 时,先判断该数是否在 byte 范围内,如果是就可以。 -
byte、short、char三者可以计算,在计算前首先转换位int类型。
-
Boolean类型不参与转换。
-
:表达式结果的类型自动提升为操作数中的类型。
强制类型转换易错点
-
当进行数据的大小【】时,就需要使用到强制转换。可能会造成精度降低或溢出。
-
强转符号只针对于有效,往往会使用小括号提升优先级。
-
char类型,需要强转。
-
byte和short、char类型在进行运算时,当作int类型处理。
String类型
基本数据类型转换成String类型
语法:将基本数据类型 + " "
String类型转换成基本数据类型
语法:通过基本数据类型的包装类调用parseXX方法。
字符串转字符
含义:把字符串的第一个字符取出。