数据类型
数据类型
-
强类型语言
- 要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用
-
弱类型语言
-
Java的数据类型分为两大类
- 基本类型(primitive type)
- 引用类型(reference type)
package base;
public class Demo02 {
public static void main(String[] args) {
//八大基本数据类型
//整数的四种表示方式
int num1 = 10;//最常用
byte num2 = 20;
short num3 = 30;
long num4 = 29L;//Long类型要在数字后面加个L
//小数:浮点数
float num5 =60.1F;//Flot 类型要在数字后面加个F
double num6 = 3.14159265358979433314;
//字符
char name = '中';
//字符串,String不是关键字,类
//布尔值
boolean flog = true;
//boolean flog = false;
}
}
package base;
public class Demo03 {
public static void main(String[] args) {
// 整数拓展: 进制 二进制0b 十进制 八进制0 十六进制0x
int i = 10;
int i1 = 010;//八进制
int i2 =0x10;//十六进制
System.out.println(i);
System.out.println(i1);
System.out.println(i2);
System.out.println("================");
//======================
//浮点数拓展? 银行业务怎么表示?钱
//BigDecimal 数学工具类
//=========================
//float 有限 离散 舍入误差 大约数 接近但等于
//double 双精度、64 位、符合 IEEE 754 标准的浮点数;
//最好完全使用浮点数进行比较
float f = 0.1f;//0.1
double d = 1.0/10;//0.1
System.out.println(f==d);//false
//=========================
//字符拓展
//===================
System.out.println("================");
char c1 = 'a';
char c2 = '中';//这里用的是单引号不是双引号 "" 和'' 是不同的,一个是字符串,一个是字符。字符串String是对象
System.out.println(c1);
System.out.println((int)c1);
System.out.println(c2);
System.out.println((int)c2);
//所有的字符本质还是数字
// 编码 Unicode 2字节 0-65536
//转义字符
// \t 制表符
// \换行
System.out.println("Hello\tWorld");
System.out.println("================");
String sa = new String("hello world");
String sb = new String("hello world");
System.out.println(sa==sb);
String sc = "hello world";
String sd = "hello world";
System.out.println(sc==sd);
//对象 从内存分析
//布尔值扩展
boolean flag =true;
if (flag=true){}//新手
if (flag){}//老手
//Less is More 代码要精简易读
}
}
package base;
public class Demo04 {
public static void main(String[] args) {
int i = 128;
byte b = (byte)i;//内存溢出
//强制转换 (类型)变量名 高--低
//自动转换 低-- 高
System.out.println(i);
System.out.println(b);
/*注意点:
1.不能对布尔值转换
2.不能 把对象类型转换为不相干的类型
3.在把高容量转换到低容量的时候,强制转换
4.转换的时候可能存在内存溢出,或者精度问题
*/
System.out.println("================");
System.out.println((int)23.7);//23
System.out.println((int)-45.89F);//-45
System.out.println("=======");
char c = 'a';
int d = c+1;
System.out.println(d);
System.out.println((char)d);
}
}
类型转换
- 由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换.
低-------------->高
byte,short,char->int->long->float->double
- 运算中,不同类型的数据先转化为同一类型,然后进行运算.
- 强制类型转换
- 自动类型转换
package base;
public class Demo05 {
public static void main(String[] args) {
//操作比较大的数的时候,注意溢出问题
//JDK7新特性 .数字之间可以用下划线分割
int money = 10_0000_0000;
int years = 20;
int total = money*years;//-1443836480,计算的时候溢出了
long total2 = money*years;//默认是int,转换之前已经存在问题了
long total3 = money*((long)years);//先把一个数转换为long
System.out.println(total3);
}
}
package base;
public class Demo06 {
public static void main(String[] args) {
//int a,b,c;
//int a=1 ,b=2,c=3;//程序可读性,最好是一排一个定义
String name ="qingjiang";
char x ='X';
double pi =3.14;
}
}
变量
- 变量是什么:就是可以变化的量
- Java是一种强类型语言,每个变量都必须声明其类型.
- Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域.
type varName [=value] [{,varName[=value]}];
//数据类型 变量名 = 值;可以使用逗号隔开来声明多个同类型变量.
- 注意事项:
- 每个变量都有类型,类型可以是基本类型,也可以是引用类型.
- 变量名必须是合法的标识符.
- 变量声明是一条完整的语句,因此每一个声明都必须以分号结束
package base;
public class Demo07 {
//类变量 static
static double salary = 2500;
//属性:变量
//实例变量:从属于对象;
//main方法
//布尔值:默认是false
//除了基本类型,其余的默认值都是null
public static void main(String[] args) {
//局部变量;必须声明和初始化值
//变量类型 变量名字=new base.day07
Demo07 day07 = new Demo07();
//类变量 static
}
//其他方法
//public void add(){}
}
package base;
public class Demo08 {
//修饰符,不存在先后顺序
final static double PI =3.14;
public static void main(String[] args) {
System.out.println(PI);
}
}
本文作者:freedomAndWind
本文链接:https://www.cnblogs.com/linjiangplus/p/15494080.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步