栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JAVA学习日记

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JAVA学习日记

2022.1.3 1.注释

书写注释是一个非常好的习惯

单行注释 //双斜杠

多行注释


2.关键字

所有标识符都以(A-Z或a-z)、美元符($)、下划线(_)开始

首字母之后可以是任意组合

不能用关键字作为变量名或者方法名

标识符是大小写敏感的

可以用中文命名,但是很low。。不规范


3.数据类型

强类型语言:要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用。——安全性高 速度慢

弱类型语言:JS、VB。

1.数值类型

  • 整数类型

byte 占1个字节范围:-128~127

short 占2个字节范围:-32768~32767

int 占4个字节范围: 负21亿~21亿

long 占8个字节范围:巨大

  • 浮点类型

float 占4个字节——同int占4个字节

double 占8个字节(double使用的比较多)——同long int占8个字节

  • 字符类型 char 占两个字节

2.Boolean类型 占1位,只有true和false两个值。

位(bit):是计算机内部数据存储的最小单位,10010011是一个八位二进制数。

1Byte表示一个字节 1B=8b

1024B=1KB

1024KB=1M

1024M=1G

  • 浮点数拓展
float --有限 离散的 舍入误差 接近 但不等于
//最好完全避免使用浮点数进行比较,可以使用BigDecimal 数学工具类进行比较。
 float f=0.1f;     // 0.1
        double d=1.0/10; //0.1
        System.out.println(f==d); //false
float d1=232323323232323f;
        float d2=d1+1;
        System.out.println(d1==d2);// true
  • 字符拓展
所有的字符本质还是数字
char c1='a';
        char c2='中';;
        System.out.println((int)c1);//强制转换
        System.out.println(c1);

        System.out.println((int)c2);//强制转换
        System.out.println(c1);

输出:

97
a
20013
a

  • 布尔值扩展
​
boolean flag=true;
if(flag==true){}//新手
if(flag){};//老手
less is more 代码要精简易读 以上两种相同

​

4.类型转换

由于Java是强类型语言,所以运算中,不同类型的数据先转化为同一类型,然后进行运算。

类型转换由低-----------------------------高

byte,short,char-->int-->long-->float-->double(小数的优先级大于整数)

强制转换 (类型)变量名 高--低
 public static void main(String[] args) {
         int i=128;
         byte b=(byte)i;  //内存溢出 
        //强制转换 (类型)变量名
         System.out.println(i);
        System.out.println(b);

输出128
-128
自动转换  低--高
    int i=128;
    double c=i;
    System.out.println(c);

   输出: 128
          128.0

注意点:1.不能对Boolean值转换。

2.不能把对象的类型转换为不相干的类型 。

3.在高容量转换到低容量的时候,强制转换。

4.转换的时候可能存在内存溢出,以及精度问题。

public static void main(String[] args) {
        //操作比较大的数的时候,注意溢出问题
        //JDK7新特性,数字之间可以用下划线分割
         int money=10_0000_0000;
         int years=20;
         int total=years*money;//-1474836480,计算的时候溢出了。
         long total2=years*money;// 由于默认是int,转换为lnog之前已经出问题了。
         long total3 =(long)years*money; // OK
        System.out.println(total);
        System.out.println(total2);
        System.out.println(total3);

-1474836480
-1474836480
20000000000
注意:L l 都可以表示long,但是最好用大写L,小写l容易看成1。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/696742.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号