JAVA简单数据类型「java简单数据类型」
- 新闻资讯
- 2023-05-09 13:22:32
- 来源:搜狐
提纲:
1、数据类型的分类2、8种基本数据类型3、数据类型的转换
上节课回顾
1、第一个程序:重点
A:程序的结构,B:java程序的执行过程:编写源代码,编译器进行编译:javac,解释器执行:java
//HelloWorld.javapublic class HelloWorld{public static void main(String[] args){//JVM执行程序的入口System.out.println("Hello World...");}}class A{}class B{}
2、类的阐述:知道
A:同一个源文件中可以定义多个类。B:编译后,每个类都会生成独立的.class文件,文件的名字和类名是一致的。C:一个类中,只能有一个主函数,每个类都可以有自己的主函数。D:public修饰的类,称为公开类,要求类名必须和文件的名字一致。E:一个源文件中,只能有一个公开类。
3、包,package:了解
作用:类似于文件夹,用于管理和区分字节码文件。语法:package 包名;位置:必须写在源文件的第一行。带包编译:javac -d . 源文件名.java (自动生成目录结构)带包运行:java 包名.类名包名:所有的字母都小写,采用域名倒置的规则
4、编码规范
A:书写格式:层级之间的缩进,tab键,一个制表符一行只能有一句代码每行语句使用;分号结束B:注释单行注释://多行注释:/*....*/文档注释:/**....*/C:标识符命名:(掌握)标识符:在写程序的时候,对类,包,变量,方法等等命名。语法要求:1、组成:字母,数字,_,$2、数字不能开头3、区分大小写4、不能是java中的保留字和关键字。public static void class int约定俗成:1、见名知意,英文单词2、类的名字,首字母大写3、变量名,方法名等,驼峰式命名,studentName4、包名,全部字母都是小写5、常量名,所有的字母都大写。
5、变量
概念:内存中的一小块空间。用于存储数据。程序执行过程中,数值可以改变。三要素:数据类型,变量名,值语法:定义变量:数据类型 变量名赋值变量:变量名 = 数值;
一、数据类型的分类
Java中的数据类型:基本数据类型和引用数据类型。
Java语言是强类型语言:对数据类型的要求很严格。声明是什么类型的变量,就要存储什么类型的数值。
二、基本数据类型Java中的基本数据类型:4类8种
2.1整数型
示例代码:
public class Test1Type{public static void main(String[] args){//1.创建byte类型的变量,测试取值范围byte b = 127;//取值范围:-128~127,共(256)System.out.println(b);//2.short类型的变量,short s = -32768;//取值范围:-32768~32767,共(65536个数值)System.out.println(s);//3.int类型的变量int i = 2147483647;//取值范围:-2147483648System.out.println(i);//4.long类型的变量long l1 = 9223372036854775807L;//加L表示该数值是lang类型的System.out.println(l1);int age = 19;long l2 = 100000000L;}}
2.2浮点型
就是生活中的小数
float类型:4个字节,32bit,定义变量的时候,数值后加f,或Ffloat f = 3.14f;double类型:8个字节,64bit,默认类型
科学计数法表示:科学计数法:3.4E383.4E1,10的1次方-->10E2,10的平方-->100E3,10的立方-->1000E38,10的38次方-->10000000000...
示例代码:
public class Test2FloatAndDouble {public static void main(String[] args) {//1.单精度浮点数:floatfloat f = 3.14f;System.out.println(f);//2.双精度浮点数:doubledouble d = 1.23;//java中的小数,默认类型是doubleSystem.out.println(d);//科学计数法double d2 = 2000;//int,隐含了数据类型的自动转换System.out.println(d2);double d3 = 2000.0;//doubleSystem.out.println(d3);double d4 = 2E3;//相当于2*10的3次方System.out.println(d4);//1.7E308,相当于1.7乘以10的308次方。17后有307个0double d5 = 17000000000000000000000000.0;//doubleSystem.out.println(d5);//1.浮点类型:IEEE754标准。}}
2.3 布尔类型
boolean类型:表示逻辑对和错的。取值只有两个,true(对,真),false(错,假),
示例代码:
public class Test3Boolean {public static void main(String[] args) {//定义一个boolean类型 的变量//该类型,只有2个值:true,falseboolean b1 = true;boolean b2 = false;//"表达式",就是一个式子,数值和一些运算符组成的// 3 5 -->8boolean b3 = 3 > 5;//3 > 5的计算结果:false//当给boolean类型变量赋值的时候,//可以直接赋值:true,false//也可以赋值为一个表达式:该表达式的计算结果是true或者falseSystem.out.println(b1);System.out.println(b2);System.out.println(b3);//false}}
2.4 字符型
char,表示单个的字符,使用单引号引起来的,但本质上是个数值,因为对应的字符编码值。
Java语言采用的字符集:Unicode编码。
赋值方式一:通过''引起来的字符:'A'-->65
赋值方式二:通过编码值进行赋值:10进制的编码值,16进制的unicode编码。
示例代码:
public class Test4Character {public static void main(String[] args) {//字符类型:char,使用单引号引起来char c = 'A';System.out.println(c);//使用编码值进行存储char c2 = 65;//65是字符A的编码值System.out.println(c2);//采用unicode编码:16进制赋值char c3 = 'u0041';System.out.println(c3);char c4 = '中';System.out.println(c4);System.out.println((int)c4);//将c4这个字符按照数值打印:其实就是该字符的编码值char c5 = 20013;System.out.println(c5);//中char c6 = '国';//22269System.out.println((int)c6);char c7 = 22269;System.out.println(c7);}}
转义字符:
转义字符:将字符进行转义-->语法上使用1、将有特殊作用的字符,转为普通的字符,不再起作用',",2、还可以将一些普通的字符,转为有特殊含义的作用n,t
示例代码:
public class Test5TranserSign {public static void main(String[] args) {/*转义字符:将字符进行转义-->语法上使用1、将有特殊作用的字符,转为普通的字符,不再起作用',",2、还可以将一些普通的字符,转为有特殊含义的作用n,t*/char c = ''';System.out.println(c);char c2 = '"';System.out.println(c2);System.out.println("HellonWortld");System.out.println("C:Rubypro");System.out.println(""HelloWorld"");}}
注意:String是引用类型,用于表示一个字符序列。使用双引号引起来的都是字符串的内容
三、数据类型的转换
Java这门语言,虽然是强类型语言:要求数据类型一致。 但是实际上允许我们在一定程度上可以转换:
自动转换:A:两种类型兼容B:目标类型的取值范围大于 源类型取值范围强制转换:A:两种类型兼容B:目标类型的取值范围 小于 源类型的取值范围需要加强制转换符的语法:说明要强制转为哪种类型(要转换的类型)数值取值范围:byte-->short-->int-->long-->float-->doublechar
示例代码:
public class Test7Convert {public static void main(String[] args) {/*Java这门语言,虽然是强类型语言:要求数据类型一致。但是实际上允许我们在一定程度上可以转换:自动转换:A:两种类型兼容B:目标类型的取值范围大于 源类型取值范围强制转换:A:两种类型兼容B:目标类型的取值范围小于 源类型的取值范围需要加强制转换符的语法:说明要强制转为哪种类型(要转换的类型)数值取值范围:byte-->short-->int-->long-->float-->doublechar*/short s1 = 123;//int i1 = s1;//隐含着将s1这个数值由short类型转为int,再赋值给i1这个变量System.out.println(s1);System.out.println(i1);byte b1 = 10;int i2 = b1;//byte-->intSystem.out.println(i2);//byte的取值范围:-128~127之间byte b2 = (byte)s1;//将s1由short类型,强制转为byte类型,再赋值给byte类型的变量b2System.out.println(b2);//123short s2 = 128;byte b3 = (byte)s2;//-128System.out.println(b3);/*整型:2进制byte--->short:自动转换byte:8位0000 0001short:16位0000 0000 1000 0000short-->byte:强制转换,因为数据存在不安全性0000 0000 1000 00001000 0000*/double d1 = 2.5;int i3 = (int)d1;//强制转换:浮点到整数:直接截取整数部分,忽略小数System.out.println(i3);long l1 = 100L;float f1= l1;System.out.println(f1);//char 0-65535//short -32768~32767short s3 = -65;char c2 = (char)s3;//65-->A,-65-->?System.out.println(c2);}}
三、总结
1、数据类型:
基本类型,引用类型
4类8种:(记住,掌握,会用)
整数型:4种byte,short,int(默认),long,加L浮点型:2种float加F,double(默认)字符型:char:单引号引起来的单个字符,对应的是编码表中的编码值:0-65535。转义字符:,将字符进行转义A:有特殊作用的字符,转为普通的字符;,",B:普通的字符,转为有特殊作用的字符t,n65:A,97:aboolean,布尔类型,true,false
类型转换:
自动转换:类型兼容,取值范围小-->取值范围大。强制转换:类型兼容,取值范围大-->取值范围小。数据可能不安全,就需要强制转换(要转的类型)数值
boolean类型不参加这些数值方面的转换
String:引用类型
双引号引起来的字符序列。"abc","helloworld"," 王二狗"
四、作业
1、课堂代码敲3遍
2、完成以下题目
A、声明字符串变量name,存储你的姓名,并打印出这个变量的值。B、声明整型变量age,存储你的年龄,并打印出这个变量的值。C、声明浮点型变量score,存储你的成绩,并打印出这个变量的值。