【Java】来杯咖啡,简单了解

 

目录

初始Java  main函数

Java程序的运行 

标识符

常量与变量

数据类型和变量

类型转换

自动类型转换(隐式)

强制类型转换(显式)

类型提升 


初始Java  main函数

public class Test {
    public static void main(String[] args) {
        System.out.println("hello");
    }

class:定义一个类

Test:类名

public:如果一个类名被public修饰,那么源文件名应与此类名保持一致,否则会出错。

类存在于源文件中,方法(可以理解为C语言中的函数)存在于类中,语法存在于方法中;一个类中可以有多个方法,但main只能有一个。

 

Java程序的运行 

标识符

 定义:在程序中用户给类名,方法名或变量取的名字称为标识符

组成:字母,数字,下划线,$等

注意:不能以数字开头,不能是关键字,且严格区分大小写

【软性建议】
类名:每个单词的首字母大写(大驼峰)
方法名:首字母小写,后面每个单词的首字母大写(小驼峰)
变量名:与方法名规则相同 

常量与变量

何为常量?即固定不变的值即是常量,程序运行前便确定的数值

数据类型和变量

四类:整数型,浮点型,字符型,布尔类型

八种基本数据类型byte short int long float double char boolean

与C语言略显不同,Java中整型新增了一个新成员 byte ,占1个字节与C语言中的char非常相似,少了一个成员 char ,也没有 long long类型了,而八种基本数据类型中,boolean布尔类型也是个新成员; 我们要尽快熟悉Java的语法,从C语言的习惯中摆脱出来。

Java中没有无符号类型,因此,除了布尔类型这个特殊的类型外,其余类型的变量在存储时,首个比特位为符号位;浮点数依然遵循其存储方法;另外一个需要注意的点是 Java中没有类似于C语言中求所占空间大小的操作符sizeof;各个类型所占字节的大小不因操作系统而改变,是多少就是多少,这也造就了Java的可移植性强。

那么接下来就简单介绍一下char和boolean这两种类型吧。

char - 字符型 -  2个字节

Java中所使用的字符集是Unicode,它更加的广泛包含多种语言,可以认为囊括了ASCII;

因此,char可以存储汉字,一个汉字占2个字节,

char ch = ' 六 ';

boolean  -  布尔类型  -   非常特殊 没有明确大小

布尔类型的变量只有两种取值,true或者false

Java中真假统一用布尔类型来表示。

类型转换

自动类型转换(隐式)

代码运行过程中,编译器会将数据范围小的转换成数据范围大的。

 public static void main(String[] args) {
        long a = 10L;
        short b = 4;
        a = b;//b会被转换成long类型再被赋给a 此过程便发生了自动类型转换
        b = a;//此代码会报错 因为b为short类型 a为long类型占8个字节 数据会丢失
    }
        float a = 9.1f;
        double b = 9.99;
        b = a;//此过程不会报错 因为double比float更为精确 数据范围更为广泛
        a = b;//此过程则会报错 因为数据范围小的无法赋值给数据范围大的 会造成数据丢失

强制类型转换(显式)

        int a = 10;
        short b = 19;
        b = (short)a; //强制类型转换成short类型,则不会报错

 

但是我们在使用强制类型转换时,要考虑是否有数据丢失的情况。 

 

类型提升 

因CPU是以4个字节进行读取的,为了运行方便,效率更高,通常会把小于4个字节的数据提升成4个字节再参与运算。

 看,两个byte类型的变成先被提升成int类型再参与计算,因int类型所表示的数据更广所以当 a+b的结果赋值给byte类型的c时,编译器报错了;此时我们只需强制类型转换成byte便可运行此代码。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值