• 【java技术路线】1.1 java语言环境与基本数据类型


    java语言环境与基本程序结构

    1.1 Java语言环境

    Java是语言诞生于1991年。

    其语言特性:可移植性;多线程;健壮性;完全面向对象

    Java的加载与执行主要分为编译与运行两个部分。
    编译阶段:
    Java源文件存储的是源代码并不能直接执行,源文件如果全部符合Java编写规范会生成编译文件,即.class文件(字节码)。编译阶段的主要任务是检查Java源程序是否符合Java语法,不符合Java语法无法生成字节码文件。
    运行阶段:
    类加载器会去硬盘上找相应的.class文件并将该字节码文件装载到JVM中。JVM将 .class字节码文件解释成二进制的数据。然后操作系统执行二进制和底层硬件平台进行交互。

    编译和运行阶段如下图所示:
    在这里插入图片描述

    1.2 Java基本数据类型
    1.2.1 基本数据类型

    在Java中基本数据类型有 :整数型(byte int short long)、字符型(char )、浮点型(double float)、布尔型(boolean)

    整数型:
    Java默认整数型为int
    八进制以0开头,十六进制以0x开头

    int c=10;//十进制
    int c1=010;//八进制
    int c2=0x10;//十六进制
    long x= 456;//long类型,456被当作int类型,但因为int范围比long小所以可以自动转换
    //强制类型转换应加强制类型转换符,但存在精度损失的风险
    int y = int(x);
    long k = 2147483648L;
    int e = (int)k;//精度损失严重结果为负数
    
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    字符型:
    一个中文字符占两个字符
    '\n’为换行符
    '\t’为制表符
    ‘\’在Java语言中有转义作用

    public class Main{
    	public static void main (String[] args){
    		char c ='a';
    		System.out.println(c);
    		}
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    浮点型:
    float:四字节
    double:八字节
    在Java语言中,所有浮点型默认被当作double。要想该字面值当float 处理,需在字面值后面加f。

    double d =3.0;
    float f= 5.1f;
    
    • 1
    • 2
    1.2.2 基本数据类型之间的互相转换

    1.八种基本数据类型除布尔型之外,其他都可以互相转换
    2.小容量向大容量转换为自动转换
    3.小容量从小到大排序:byte short(char) int long float double
    4.任意浮点型均比整形大
    5.char与short平级
    6.大容量转小容量为强制类型转换,必须加强制类型转换符,不然编译不通过,但需要谨慎使用会损失精度
    7.当整型字面值没有超过byte short char的取值范围,可以直接赋值给byte short char
    8. byte short char混合运算的时候,各自先转换成int 类型再做运算
    9. 多种数据类型混合运算,先转换成容量最大的那种类型再计算

    byte a = 1000;//编译不通过,超出取值范围
    int f =10/3;//10和3 默认是int
    btye h = (byte)(int)g/3;//编译不通过
    byte h = (byte)(int)(g/3);
    
    • 1
    • 2
    • 3
    • 4
  • 相关阅读:
    Attention注意力机制学习(二)------->一些注意力网络整理
    推特大裁员后,马斯克与白宫发生冲突!META 大批裁员正在路上
    评价类——熵权法(Entropy Weight Method, EWM),完全客观评价
    【线性代数基础进阶】向量-part1
    代数与逻辑:作业三 贝叶斯决策
    深入理解javascript对象
    算法进阶-2sat-cf-1697F
    一、Clion和STM32CubeMx---点亮LED(案例程序)
    计算机网络课程实训:局域网方案设计与实现(基于ensp)
    DockerCompose常用命令及演示
  • 原文地址:https://blog.csdn.net/sunnyblogs/article/details/126919298