java数据类型小结~~~

编译运行java工具--JDK

java最主要的优点:一次编译,到处运行

java程序执行过程:

        存储在磁盘上的×××.java文件 -> 编译生成×××.class字节码文件 -> java 文件名运行

        JDK命令:javac 文件名.java--编译;  java 文件名--运行

        每次修改java文件后,先保存,保存之后一定重新编译运行

JDK、JRE、JVM三者之间的关系:

        JDK--java开发工具;JRE--java运行环境;JVM--java虚拟机

        JDK中含有JRE;JRE中含有JVM;

        java字节码文件都是加载到JVM上执行的,所以JVM是java中的核心部分

在Java中定义一个类的基本语法:(public) class 类名 { 类体 },其中,public表示公开的

注意:1.在一个java文件中只能有一个公开类--public class,可以有多个普通类--class

          2.每一个类都会生成相应的字节码文件,为了方便,使用那个类就加在那个class文件

          3.编程建议:1.类名采用大驼峰命名:每个单词首字母大写  2.左括号紧跟着类名当前行

Java中代码部分应该在类体中进行编写。

public class 类名 {

        public static void main(String[] args) {

                // 代码部分

        }

}

public static void main(String[] args):程序的主方法,整个程序执行入口,sun公司规定的固定编写

        public--公开的

        static--静态的

        void--main方法的返回值类型为空

        main--主方法的方法名

        String[] args--引用数据类型:字符串数组,运行时命令行参数;

               运行程序时不传递参数,String[] args为空;运行时传递字符串数组,用String[] args存储

三种输出语句:1.System.out.println():打印括号中的内容并换行

                          2.System.out.print():打印括号中的内容,不换行

                          3.System.out.printf():以格式化的形式打印,与C语言相同

常量:1.字面值常量:3.14,100

           2.final修饰的常量:final 数据类型 变量名 = 初始值;

                        建议变量名应该全部大写;

                        常量仅仅只能初始化一次,且在使用前,一定要先初始化

 标识符:由数字、字母、下划线、$组成,不能以数字开头

变量:程序运行时可变的量,相当于在内存中开辟了一块空间来保存数据

        1. java中没有全局变量,规定在类体中、在(main)方法外部定义的变量为成员变量

        2.变量仅仅只定义而不初始化,java为安全起见,不会设置为随机值,而是编译报错

        3.用标识符给变量命名时,不能以数字开头,不建议用下划线、$开头

类型:对变量的类型进行划分,不同类型的变量具有不同的特性

java中有八种基本数据类型:byte char short int long float double boolean,除此之外,还有引用数据类型:类、string、数组、接口等等

整型数据:全部都是有符号数--最高位表示符号位,其他的为数值位,0表示正数,1表示负数

                short:短整型,基本语法:short 变量名 = 初始值;

                          占用内存2个字节,表示的数据范围:-2^15 ~ 2^15-1

                          所对应的包装类:Short;最大、小:Short.MAX_VALUE、Short.MIN_VALUE

                int:整型,基本语法:int 变量名 = 初始值

                        占用内存4个字节,表示数据范围:-2^31 ~ 2^31-1

                        所对应的包装类:Integer;最大、小:Integer.MAX_VALUE、Integer.MIN_VALUE

                long:长整型,基本语法:long 变量名 = 初始值L;L--将初始值转为长整型

                           占用内存8字节,表示的数据范围:-2^63 ~ 2^63-1

                           所对应的包装类:Long;最大、小:Long.MAX_VALUE、 Long.MIN_VALUE

 浮点型数据:按照IEEE标准存储在内存中,因此会存在一定的精度误差,同时由于存储方式,所以其表示的数据范围不能单纯地用2^n来表示

                      由于存在精度误差,所以浮点是用范围判断比较好,例如浮点数f==0--> f<0.000001 && f>-0.000001

                      double:双精度浮点数,基本语法:double 变量名 = 初始值; 

                                 所对应的包装类:Double,--Double.MAX_VALUE、Double.MIN_VALUE

                      float:单精度浮点数,基本语法:float 变量名 = 初始值f;f--转化类型为单精度 

                                 所对应的包装类:Float,--Float.MAX_VALUE、Float.MIN_VALUE

                      double-8字节,float-4字节,由于float的精度范围比较小,所以工程上一般用double

字节数据:byte:字节数据类型,占用1字节,基本语法:byte 变量名 = 初始值;

                            所对应的包装类Byte,--Byte.MAX_VALUE、Byte.MIN_VALUE

                            byte 类型不同于int类型,同样会发生类型提升,

                            byte b1 = Byte.MAX_VALUE + 1; -- 不兼容的类型: 从int转换到byte可能会有损失

字符数据:char:字符数据类型,占用2字节,基本语法:char 变量名 = 初始值;

                             转化为数值,无符号位,都是数值位,表示的数据范围:0~ 2^16-1

                             java中的字符集:Unicode,相较于C语言中的ASCLL码,范围更大,包含中文

                             字符中字母占用内存1字节,汉字占用内存2字节

                             Character,char类型所对应的包装类

布尔数据:boolean:布尔数据类型,没有明确的大小,基本语法:boolean 变量名 = 初始值;

                                  布尔类型只有两种取值,true和false;其中true为真,false为假

                                  java布尔类型中没有所谓的0表示假,非0表示真这样的说法:if(1)--error

                                  Boolean,boolean所对应的包装类

类型提升:1.int 与 long类型进行运算时,int 会提升为long,得到的结果为long,用long来接收;

                     如果使用int接收,则需要强制类型转换

                  2.CPU从内存中读取数据时,按照4个字节进行读取,尉氏县硬件方便,所以short、byte小于4字节的数据类型,在参与运算前,先提升为int型数据,同时结果为int型

byte b1 = 10;
byte b2 = 21;
// byte b = b1 + b2; -- 类型不兼容,从int转为byte可能会有损失
byte b = (byte)b1 + b2;
int maxNum = Integer.MAX_VALUE + 1;
System.out.println(maxNum); // -2^15 -- 跨越正负

System.out.println(Byte.MAX_VALUE + 1); // 2^7 -- 发生整型提升

// System.out,println 默认以整数的形式输出

类型转换:隐式类型转换:把小类型数据转化为大类型数据

                  显式类型转换:把大类型数据转化为小类型数据,需要进行强制类型转换

                  int 与boolean是完全不相干的数据类型,无法完成类型转换,--int无法转换为boolean

字符串类型:String,基本语法:String 变量名 = 初始值;

输出时,任何字符与字符串拼接,其结果就是字符串;即:

              当输出的某一项是字符时,则输出的整体就是字符串,“+”表示拼接

              当输出时没有字符,仅仅计算数据求和,则“+”表示相加

int num1 = 10;
int num2 = 20;
System.out.println("hhh" + num1 + num2); // hhh1020
System.out.println("hhh" + (num1 + num2)); // hhh30
System.out.println(num1 + num2); // 30

int 与String相互转换:

       将int转为String:1.利用“+”拼接        2.利用String.valueOf方法

        将String转为int:Integer.parseInt方法

int number = 2;
String str1 = number + " ";
String str2 = String.valueOf(number);

String str = "100";
int number1 = Integer.parseInt(str);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值