day04

Posted on 2021-05-13 22:20  JudaiAsher  阅读(30)  评论(0编辑  收藏  举报

数据类型

Java是强类型语言,所有变量必须先定义后才能使用,强类型语言比弱类型语言更安全

变量:数据类型 变量名=值;(不要忘记分号,可以用逗号来隔开同类型变量)

  1. 基本类型primitive type

    • boolean布尔值类型:占一位其值只有true和false两个

    • 数值类型

      • 整数类型(byte占一个字节范围:-128-127,short占两个字节范围:-32768-32767,int占4个字节范围:-2147483648-2147483647,long占8个字节范围:-9223372036854775808-9223372036854775807,int常用)

      • 浮点(小数)类型(float占4个字节,double占8个字节,float类型要在数字后面加F,double常用)

      • 字符类型char占2个字节(char只能写单个字符,String可以定义字符串)

         

  2. 引用数据类型reference type

    • 接口

    • 数组

字节

位bit是计算机内部储存的最小单位,是一个8位二进制数,字节byte是计算中数据处理的基本单位,用大写B表示,1B=8bit,1KB=1024B,字符是指计算机中使用的字母、数字、字和符号

拓展

整数拓展:

进制二进制十进制八进制十六进制
  0b   0 0x
         

例如int i = 10;

int i2 =010;//八进制的10,输出为8,转换方法:把每一位的数字乘以8的N次方(N为从右往左数的位数-1)再求和

转换过程:0*8^2+1 * 8^1+0*8^0=8

int i3 =0x10;//16进制的10,输出为16,16进制计数9,A,B,C……到F,然后是10

 

 

浮点数拓展:

浮点数是有限的、离散的,当结果无法精确表示时,它会舍入误差,成为一个约数,最好不要用浮点数进行比较,最好不要用浮点数进行比较,最好不要用浮点数进行比较,所以银行算账是不能用浮点数计算的,用BigDecimal数学工具类

 

字符拓展:

char c1 = 'a';

system.out.println((int)c1);//强制转换成数字,因为字符的本质是数字,所以最后会输出97,编码中有一个Unicode的编码,占2个字节,早些年最多可以表示65536个字符,Excel最长只有2的16次方,就是65536,Unicode表里:97 = a ,65 = A

转义字符 \t制表符 \n换行……

system.out.println("Hello\tWorld")输出结果中间会出现tab一样的空

 

布尔值拓展:

boolea flag = true;

if (flag==true){} (这行代码等于if (flag){} ,因为Java有less is more的规则,能简单表示就会简单表示,这是老手和新手写代码的区别)

 

String sa = new String(original"hello world");

String sb = new String(original"hello world");

System.out.printlin(sa==sb)

输出为false

 

String sc = "hello world";

String sd ="hello world";

System.out.printlin(sc==sd)

输出为true

 

这两个的底层逻辑不一样

Copyright © 2024 JudaiAsher
Powered by .NET 9.0 on Kubernetes