Java基础02

版权声明: https://blog.csdn.net/qq_40794602/article/details/86417131

整数型:

  • byte  占一个字节   -2^7  ~ 2^7-1【-128~127】
  • short 占两个字     -2^15 ~ 2^15-1【-32768~32767】
  • int   占四个字节   -2^31 ~ 2^31-1【-2^31=2147483647】
  • long  占八个字节   -2^63 ~ 2^63-1【-2^63=9223372036854775807】

浮点型:

  • float 单精度  占四个字节  -3.403E38~3.403E38
  • double 双精度 占八个字节  -1.798E308~1.798E308

字符型:

  • char 占两个字节 0~65535(在不同的编码中占用不同的字节,这个只是一般情况占用两个字节)

布尔型

  • boolean java中boolean类型没有明确指定他的大小

注意:赋值时候注意float类型,long类型,加大写的F和L

进制表示形式:

  • 二进制使用0b开头(只有JDK1.7版本以上可以使用0b2 来表示二进制)
  • 八进制数使用0开头
  • 十六进制数使用0X(x)开头

数据类型之间的隐式转换:

  • 取值范围小的数据类型与取值范围大的数据类型进行运算,会先将小的数据类型提升为大的,再运算
  • Java的运算是以补码形式运算的

注意:

  • 进行混合运算的时候,byte,short,char不会相互转换,都会自动类型提升为int类型
  • byte,short,char与其他类型进行混合运算的是小的数据类型提升为大的

浮点数的存储和整数存储方式不同,不能精确的表示一个小数:(用float举例子)float占用四个字节 ,32位,第一位是符号位(用S表示),第二至第九位是指数位(用E表示),第10至第32位是尾数位(用M表示),一个浮点数的计算方式V = -1^s*M*2^E

补充:

  • 指数是指多少次方,指数位取值范围为0~255,总共有256个数
  • IEEE 754规定 0表示0,255表示无穷大,还有1-254可用,最后就有-126~127
  • 提问:long类型和float类型哪种类存储的数字范围更大?答:float

字符:

  • 字符是指计算机中使用的字母、数字、字和符号,包括:1、2、3、A、B、C、~!·#¥%……—*()——+等等。
  • 在 ASCII 编码中,一个英文字母字符存储需要1个字节。
  • 在 GB2312 编码或 GBK 编码中,一个汉字字符存储需要2个字节。
  • 在 UTF-8编码中,一个英文字母存储需要1个字节,一个汉字储存需要3到4个字节。
  • 在ascii表中大写的A与小写的a相差32
  • 记住ASCII码的三个值: '0' 48     'A' 65     'a' 97

字符和字符/字符和字符串的相加:


public class Helloword {

	public static void main(String[] args) {
		char c1 = '0';//48
		char c2 = 'B';//66
		System.out.println(c1 + c2 + "java");  //会输出114java
		System.out.println(c1 + "java" + c2);  //会输出0javaB
		System.out.println(c1+c2); //会输出114
	}

}
  • 问题:Java语言中的字符char可以存储一个中文汉字吗?为什么呢?
  • 答:可以。因为Java语言采用的是Unicode编码。Unicode编码中的每个字符占用两个字节。中文也是占的两个字节,utf-8编码是unicode中的一种编码,所以,Java中的字符可以存储一个中文汉字

补充:

  • 类名第一个字母推荐使用大写(规范),花括号是成对出现的
  • Eclipse的快速注释:ctrl + /  是单行注释  Ctrl + shift + /  是多行注释
  • eclipse中 sysout + alt+/ 就可以快速补全 System.out.println()

猜你喜欢

转载自blog.csdn.net/qq_40794602/article/details/86417131