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

Java-常量与变量-学习笔记02

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

Java-常量与变量-学习笔记02

目录
  • 一. 标识符
  • 二. 关键字
  • 三. 变量
  • 四. 数据类型
    • 1. 介绍
    • 2. 整型
    • 3. 浮点型
    • 4. 局部变量的储存方式
    • 5. 字符型
      • 5.1 转义字符(如`n`)
    • 6. 字符串
    • 7. 布尔类型
    • 8. 变量的综合应用
  • 五. 类型转换
  • 六. 常量

一. 标识符
  • 比如类名,变量名就是标识符
  • 标识符由字母、数字、下划线和$组成,且不能以数字为开头
  • 区分大小写
  • 标识符不能是java关键字和保留字
  • 反应其作用
  • 举例标识符:Hello, hello_word, _hello, a$1
二. 关键字

下图的紫色部分为关键字,关键字是有特殊含义的字符串,java还有一个保留字goto

java关键字如下图所示,图片来自百度百科

三. 变量

变量的三个元素:变量类型、变量名和变量值

  • 变量名命名规则:
    • 满足标识符命名规则
    • 符合驼峰法命名规则:myStudent
  • 类命名规则:
    • 满足标识符命名规则
    • 满足Pascal命名规则:MyStudent
四. 数据类型 1. 介绍

数据类型说明字节(1字节8位 / 1 byte = 8 bits)表示范围
byte字节1 [ − 128 , 127 ] [-128, 127] [−128,127]
short短整型2 [ − 32768 , 32767 ] [-32768,32767] [−32768,32767]
int整型4 [ − 2147483648 , 2147483647 ] [-2147483648,2147483647] [−2147483648,2147483647] 或 [ − 2.1 4 9 , 2.1 4 9 ] [-2.14^9,2.14^9] [−2.149,2.149])
long长整型8 [ − 2 32 [-2^{32} [−232, 2 32 − 1 ] 2^{32}-1] 232−1]
float单精度浮点型41bit(符号位) 8bits(指数位) 23bits(尾数位)
double双精度浮点型81bit(符号位) 11bits(指数位) 52bits(尾数位)
char字符型2 [ − 32768 , 32767 ] [-32768,32767] [−32768,32767]
boolean布尔型1
  • float 的取值范围
    这篇文章与这篇介绍了float为什么和int一样同样是4个 字节却能表示更多的数字,简单来说就是float把32位分为1bit(符号位) 8bits(指数位) 23bits(尾数位),float的指数范围为 [ − 127 , 128 ] [-127,128] [−127,128],取值范围就是 [ − 2 127 , 2 128 ] [-2^{127} , 2^{128}] [−2127,2128],精度可以表示 2 23 = 8388608 2^{23} = 8388608 223=8388608,也就是说最多表示7位,可以完整表示6位。
  • double的取值范围
    double是1bit(符号位) 11bits(指数位) 52bits(尾数位)
    取值范围为 [ − 2 1024   + 2 1024 ] [-2^{1024} ~ +2^{1024}] [−21024 +21024]
    精度可以表示 2 52 = 4503599627370496 2^{52} = 4503599627370496 252=4503599627370496,也就是最多可以表示16位,可以完整表示15位
2. 整型
  • 整型字面值:Java中有三种表示整数的方法,八进制、十进制、十六进制
    • 八进制:以0开头,包含0-7的数字(012,042)
    • 十六进制:以0x或0X开头,包含0-9的数字,及字母a-f,A-F(0x123abc, 0x12AB)
    • 举例123, 0123,0x123abc,0x4A, 0x123abcL(L指长整型)
  • 变量声明:数据类型 变量名(=值);
3. 浮点型
  • 浮点型字面值默认情况下是double类型,或末尾加d/D,比如123.456d、123.4D。若想要表示float类型,则需要在字面值后加f/F
  • 变量声明
    下方代码是浮点型的变量声明与示例。从中可以看出可以将float变量赋值给double(带有一个小误差),但是不能将double赋值给float
package aaa.bbb;

public class FloatDemo {
	public static void main(String[] args) {
		//定义一个单精度浮点型变量,存放1.23
		float f = 1.23f;
		//定义一个双精度浮点型变量,存放1.23
		double d = 1.23f;
		double e = 1.23;
		System.out.println("f="+f);
		System.out.println("d="+d);
		System.out.println("e="+e);
	}
}
f=1.23
d=1.2300000190734863
e=1.23
4. 局部变量的储存方式
  • 将数据按照作用进行分类:类级、对象实例级、方法级、块级
  • 方法级的变量又称为局部变量
  • 局部变量的存储方式:在内存的占中申请一个空间来存储数据
5. 字符型
  • 字符型字面值用单引号内的单个字符表示(单引号内只能有一个值)。如'a','b'
  • 定义变量:char a = 'a',char ch = 65
package aaa.bbb;

public class FloatDemo {
	public static void main(String[] args) {
		char a = 'a';
		//这里b存的是ASCII码里的65
		char b = 65;
		char c='u005d'
		System.out.println("a="+a);
		System.out.println("b="+b);
		System.out.println("c="+c);
	}
}
a = a
b = A
c = ]
  • Unicode编码:在值前加前缀u。如char c='u005d',005d是十六进制
5.1 转义字符(如n)
转义字符描述
uxxxx四位16进制数所表示的符号
单引号字符(字符)
"双引号字符(字符串)
|反斜杠字符
r回车
n换行
t横向跳格 tab效果
b退格
6. 字符串
  • 字面值
    • 不是基本数据类型,但又有相似处。字符串是类
    • 双引号引起来的0个或多个字符
  • 变量声明:String a = "";
7. 布尔类型
  • 只有true和false,0或1是不行的
  • boolean b = true;
8. 变量的综合应用
package aaa.bbb;

public class VarDemo {
	public static void main(String[] args) {
		//定义两个整型变量x,y
		int x = 0, y = 1;
		System.out.print("x = "+x+'n');
		System.out.println("y = "+y);
		System.out.print(x+"t"+y+'n');
		System.out.print("'"+x+"'n");
		//用科学计数法表示浮点数
		double d1 = 1.23E5; //1.23+10^5
		float f = 1.23e5f;
		double d2 = .2; //0.2
	}
}
五. 类型转换
  • 类型转换分为自动类型转换和强制类型转换

    • 顺着箭头方向的是自动类型转换,反过来需要强制类型转换
    double d = 1.2;
    float f = (float)d;//强制转换(type)
    
  • 例子

package aaa.bbb;

public class TypeExchange {
	public static void main(String[] args) {
		char c = (char)65536; //强制类型转换
		int n;
		n = c;//自动类型转换
		c = (char)n;//强制类型转换
		
		//整型和浮点型类型转换问题
		int x = 100;
		long y = x;
		x = (int)y;
		//long给float
		float f1 = 100000000000000L;
		System.out.println(f1); //1.0E14
		float f2 = 101231242123123L;
		System.out.println(f2); //1.01231238E14 后几位数据丢失了
	}
}
六. 常量

常量使用final定义,变量名需注意要全部大写

final int n = 5; //用final来定义变量
  • 例子
package aaa.bbb;

public class FinalDemo {
	public static void main(String[] args) {
		int m = 5;
		final int N =6;
		m = 10;
		//N = 10; 报错The final local variable n cannot be assigned. 
				//It must be blank and not using a compound assignment
		final double PI = 3.14; //命名是全部大写
		final double MAX_V = 1;
	}
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/873787.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

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

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