Java基础--注释、标识符、关键字、数据类型、数据类型转换

注释

  • Java中的注释有三种
    • 单行注释
    • 多行注释
    • 文档注释 
修改注释颜色 

要先 command ,(mac专用快捷键)调用出系统设置

关键字

关键字
abstractassertbooleanbreakbyte
casecatchcharclassconst
continuedefaultdodoubleelse
enumextendsfinalfinallyfloat
forgotoifimplementsimport
instanceofintinterfacelongnative
newpackageprivateprotectedpublic
returnstrictfpshortstaticsuper
switchsynchronizedthisthrowthrows
transienttryvoidvolatilewhile

标识符

Java 所有的组成部分都需要名字.类名、变量名以及方法名都被称为标识符 

 标识符注意点
  • 所有的标识符都应该以字母(A-Z或者a-z),美元($)、或者下划线(_)开始
  • 首字母之后可以是字母(A-Z或者a-z),美元($)、或者下划线(_)或数字的任何字符组合
  • 不能使用关键字作为变量名或方法名
  • 标识符是大小写敏感
  • 合法标识符举例 : age、$salary、_value、_1_value
  • 非法标识符举例 : 123abc、-salary、#abc
  • 可以使用中文命名,但是一般不建议去使用,也不建议使用拼音

数据类型 

强类型语言

要求变量的使用要严格符合规定,所有变量都必须先定以后才能使用

弱类型语言
Java的数据类型分为两大类
  • 基本类型 (primitive type)
  • 引用类型 (reference type)

public class demo {
    public static void main(String[] args) {
        //整数
        int num1 = 10;   // 最常用
        byte num2 = 30;
        short num3 = 30;
        long num4 = 30L; //Long类型要在数字后面加L
        //小数:浮点数
        float num5 = 50.1F; //float类型要在数字后面加个F
        double num6 = 3.14159265358979;
        // 字符
        char name = '石';  //只能填一个字符 例如 'A' 或 '中'
        //布尔值 是非
        boolean flag = true;
        // boolean flag = false;
    }
}
什么是字节?
  • 位(bit) : 是计算机 内部数据 存储的最小单位, 11001100是一个八位二进制数.
  • 字节(byte) : 是计算机中 数据处理 的基本单位, 习惯上用大写B来表示
  • 1B(byte, 字节) = 8bit ( 位 )
  • 字符 : 是指计算机中使用的字母、数字、字和符号
  • 1bit表示1位
  • 1Byte表示一个字节 1 B = 8b
  • 1024B = 1KB
  • 1024KB = 1M
  • 1024M = 1G
数据类型扩展
public class demo {
    public static void main(String[] args) {
        //整数扩展 进制: 二进制0b  十进制 八进制0 十六进制0x
        int i = 10;  //十进制
        int i2 = 010; // 八进制
        int i3 = 0x10; // 十六进制16 0-9 A-F
        // 分别打印出来看看对应的十进制数字是多少
        System.out.println(i);
        System.out.println(i2);
        System.out.println(i3);
        System.out.println("=================================");
        //浮点数扩展? 银行业务怎么表示?
        //用BigDecimal 数学工具类表示
        //===========================================
        // float 离散 有限 舍入误差 大约 接近但不等于
        float f = 0.1f;    //0.1
        double d = 1.0/10; //0.1
        //判断f是否等于d
        System.out.println(f == d);  //false
        //输出f
        System.out.println(f);
        //输出d
        System.out.println(d);
        System.out.println("=================================");
        //==============================
        //字符拓展
        //所有的字符本质还是数字
        //===============================
        char c1 = 'a';
        char c2 = '中';
        System.out.println(c1); // a
        System.out.println((int)c1); //97
        System.out.println(c2); // 中
        System.out.println((int)c2); // 20013
    }
}

 类型转换

由于Java是强数据类型,所以要进行有些运算的时候,需要用到类型转换

运算中,不同类型的数据先转化为同一类型,然后进行运算

Java类型转换由低到高的排序

     ------------------------------------------------------------------------>

byte、short、char  --->   int  --->   long --->   float   --->   double

Java数据类型转换分为2种 
强制转换(显式转换)

语法格式 :  (需要转换成的的类型) 变量名

public class demo {
    private int id;
    public static void main(String[] args) {
        int i  = 128;
        //强制转换: (类型)变量名 高 ---> 低
        byte b = (byte) i;
        System.out.println(i);
        //会造成内存溢出,byte的范围是-128-127; i=128已经超出byte的范围
        System.out.println(b); // -128
自动类型转换(隐式转换)

转换类型由低到高,会自动进行转换

public class demo {
    private int id;
    public static void main(String[] args) {
       //自动转换 低---> 高 
       // double 转换类型比int高, 转换类型由低到高,会自动进行转换
        int num = 128;
        double double_num = num;
        System.out.println(num);
        System.out.println(double_num);
    }
}
类型转换注意点
  • 不能对布尔值进行转换
  • 不能把对象类型转换为不相干的类型
  • 高转换类型转换为低转换类型称为强制转换(显式转换)的时候,可能会出现内存溢出或精度问题
  • 操作数比较大的时候,注意溢出问题
  • public class demo {
        private int id;
        public static void main(String[] args) {
            //操作数比较大的时候,注意溢出问题
            int money = 10_0000_0000;
            int years = 20;
            int total = money * years;
            // total结果为 -1474836480,与实际结果不符
            System.out.println(total);
            System.out.println("==========================");
            //=====================================
            long total2 = money * years;
            // total结果为 -1474836480,与实际结果不符。
            // 原因: money * years默认是int型,但是这个结果已经超出int的范围,
            // 所以是在把money * years的结果赋值给total2之前就已经存在问题了
            System.out.println(total2);
            System.out.println("==========================");
            //=====================================
            //解决方案: 先把一个数转换为long型。结果就会自动转换为long型
            long total3 = money * ((long)years);
            System.out.println(total3);
    
        }
    }
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值