Java这中定义了8种数据类型。分为数值型和非数值型,数值型又分为整数类型和浮点数类型。
数值型
非数值型?
不同数据类型占用字节数
?
?数据类型的大小划分
数据类型转换?
//自动类型转换
int n =35556;
long ln = n;
float f = ln;
System.out.println(ln);
System.out.println(f);
?输出结果
35556
35556.0
//强制类型转换
long ln=35356;
int n1 = (int)ln;
System.out.println(n1);
double d = 4.568;
int n2 = (int)d;
System.out.println(n2);
输出结果?
35356
4
浮点数输出
public class Demo05 {
public static void main(String[] args) {
//计算圆面积
int r = 9;//半径
int ret1 = (int)(2*Math.PI*r);//周长
int ret2 = (int)(Math.PI*r*r);//面积
//输出方式1
System.out.println("输出方式1");
System.out.println("圆周率"+Math.PI);
System.out.println("半径为" + "的圆周长为:" + ret1);
System.out.println("半径为" + "的圆面积为:" + ret2);
//输出空行
System.out.println();
// 输出方式2 : 格式化输出
// 占位符%d代表1个整数
//占位符%F代表1个浮点数
System.out.printf("输出方式2:\n");
System.out.printf("圆周率:%.9f\n",Math.PI);
System.out.printf("半径为%d的圆周长为:%d\n",r,ret1);
System.out.printf("半径为%d的圆面积为:%d",r,ret2);
}
}
输出结果
输出方式1
圆周率3.141592653589793
半径为的圆周长为:56
半径为的圆面积为:254
输出方式2:
圆周率:3.141592654
半径为9的圆周长为:56
半径为9的圆面积为:254
浮点数输出时:
?char类型 :有两个字节?
public class Demo06 {
public static void main(String[] args) {
// 1个char类型的字符变量可以保存: 1个汉字、1个英文、1个符号
char c1 = 'A';
System.out.println(c1);
char c2 = '袁';
char c3 = '薏';
System.out.println(c2);
System.out.println(c3);
// int <==> char 之间可以自动转换
int c4 = 20013;
System.out.println(c4);
char c5 = '哈';
System.out.println(c5);
char c6 = 65;
System.out.println(c6);
}
}
注意 :char类型使用' ',且有且只有一个字符。
输出结果?
A
袁
薏
20013
哈
A
//A的ASCII码值为65?
大小写转换
public class Demo07 {
public static void main(String[] args) {
//大小写转换
char letter = 'H';
//大写转换成小写
char lower = (char)(letter+32);
System.out.println(lower);
//小写转换成大写
char upper = (char)(lower-32);
System.out.println(upper);
}
}
使用char类型强制转换成大/小写;ASCII码值加减
布尔类型
只会存在两种值:
public class Demo08 {
public static void main(String[] args) {
// boolean 布尔类型
// 只会存在两种值:
//true 代表 成立、真、正确
//false 代表不成立、假、不正确
// 通过"关系运算符"、"逻辑运算符"计算得到
int number1 = 23, number2 = 35;
boolean bool = number1 < number2;
System.out.println(bool);
}
}
通过"关系运算符"、"逻辑运算符"计算得到 结果为true