Java-day02(关键字,变量,进制转换,数据类型转换,运算符)

简介: Java-day02(关键字,变量,进制转换,数据类型转换,运算符)

关键字,变量,进制转换,数据类型转换,运算符

1.关键字,保留字与标识符

Java区分大小写

1.1 关键字

定义:有特殊含义,用作专用的字符串(单词)

特点:关键字所以字母都为小写

1.2 保留字

1.3 标识符

定义:Java对各种变量,方法,类等要素命名的字符称为标识符

1.3.1 标识符规则(见名知意)

① 由26个英文字母大小写,0-9,_ 或 $ 组成

② 数字不可以开头

③ 不可以使用关键字(class、int等)和保留字(goto和const),但能包含关键字和保留字(class1)

④ Java中严格区分大小写,长度无限制

⑤ 标识符不能包含空格

1.3.2 标识符的命名规范

包名:多单词组成时所有字母都小写。aaabbbccc

类名、接口名:多单词组成时,所有单词的首字母大写。(例:AaaBbbCcc

变量名、方法名:多单词组成时,第一个单词全部小写,其余单词单词首字母大写。(例:aaaBbbCcc

常量名:所有字母都大写,多单词时每个单词之间用下划线_连接。

(例:AAA_BBB_CCC

规则必须遵守,规范尽量遵守

2.变量与进制转换

2.1 变量

(先定义,后使用)

格式:数据类型 变量名 = 初始化值

int myint = 10;                 

作用域为最近的一对{}

2.2 数据类型

不同的数据类型,在内存中的空间大小也不同。

2.2.1 基本数据类型(8种)

数值型

整数类型(byte(1字节),short(2字节),int(4字节),long(8字节))

浮点(小数)类型(float(4字节),double(8字节))

字符型char(2字节))

布尔型boolean(只能取true或false))

2.2.2 引用数据类型

(class)

接口(interface)

数组([])

2.3 使用注意事项

  1. 整数常量默认为int型,声明long型常量后须加“L”或“l
  2. 浮点型常量默认double型,声明float型常量后须加“F”或“f
  3. 字符型只能表示一个字符(英文,中文皆可),想表示多个字符需用String(属于类的一种)
  4. 部分转义字符: \t 换行字符:\n 问号字符:\u1234

3.数据类型转换

3.1 自动类型转换

当内存容量小的数据类型与内存容量大的数据类型做运算时,内存容量小的数据类型会自动转换成内存容量大的数据类型

char a1 = 'a' 

注意:当char\byte\short之间做运算时,默认结果为int类型(char数据类型可以根据ascll码表进行转化成整型)

3.2 强制类型转换

容易造成精度的损失

内存容量大的数据类型转内存容量小的数据类型,要使用强制类型转换符:()

long a = 123456L; 
byte m1 = (byte)a;

4.原码,反码,补码

计算机以补码的形式保存所有的整数

正数:原码=反码=补码

负数:原码(转换成二进制)按位取反(符号位除外) = 反码 +1 = 补码

注意:原码二进制的首位为符号位(正数0,负数1)

5.运算符

用于表示数据的运算,赋值和比较的符号

5.1 算术运算符

5.2 赋值运算符

=   +=    -=    *=    /=    %=

s = s + 3(编译不通过) ==== s += 3(编译通过)s = (short)(s + 1)(强制转换容易损伤精度)

5.3 比较运算符(关系运算符)

5.4 逻辑运算符

&:不管左边是true还是false,右端都会进行运算

&&:当左边是false时,右端不再进行运算(建议使用

int l1 = 10;           
if( 10 /0 == 0 && l1++){
    System.out.println("111111111");
}else{
    System.out.println("222222222");
}
System.out.println(l1);

|:不管左边是true还是false,右端都会进行运算

||:当左边是true时,右端不再进行运算(建议使用

5.5 位运算符

1.无 <<<
2.>> << 拿最高位上的数(负数:1,正数:0)去补空位
3.>>> 都拿0补空位
4.~ 取反(0->1,1->0)

5.6 三元运算符

格式:(条件表达式)?表达式1:表达式2;

表达式1与表达式2为同种类型

5.7 运算符优先级

变量值交换的方法

感谢大家的支持,关注,评论,点赞!

参考资料:

尚硅谷宋红康20天搞定Java基础上部

94

目录
相关文章
|
1月前
|
存储 缓存 安全
除了变量,final还能修饰哪些Java元素
在Java中,final关键字不仅可以修饰变量,还可以用于修饰类、方法和参数。修饰类时,该类不能被继承;修饰方法时,方法不能被重写;修饰参数时,参数在方法体内不能被修改。
30 2
|
6天前
|
存储 缓存 安全
Java中的数据类型
Java语言提供了八种基本类型,分为4类8种:六个数值型(四个整数型byte、short、int、long,两个浮点型float、double)、一个字符型char和一个布尔型boolean。每种基本类型有固定的位数、取值范围及默认值。此外,还存在`void`类型,但无法直接操作。基本类型支持隐式和显式类型转换,并有对应的包装类如`Integer`、`Double`等,用于在需要对象的场景中使用。包装类支持自动装箱与拆箱机制,简化了基本类型与引用类型的转换,但需要注意性能和空指针异常等问题。
Java中的数据类型
|
4天前
|
存储 缓存 Java
Java 并发编程——volatile 关键字解析
本文介绍了Java线程中的`volatile`关键字及其与`synchronized`锁的区别。`volatile`保证了变量的可见性和一定的有序性,但不能保证原子性。它通过内存屏障实现,避免指令重排序,确保线程间数据一致。相比`synchronized`,`volatile`性能更优,适用于简单状态标记和某些特定场景,如单例模式中的双重检查锁定。文中还解释了Java内存模型的基本概念,包括主内存、工作内存及并发编程中的原子性、可见性和有序性。
Java 并发编程——volatile 关键字解析
|
4天前
|
缓存 安全 Java
Java volatile关键字:你真的懂了吗?
`volatile` 是 Java 中的轻量级同步机制,主要用于保证多线程环境下共享变量的可见性和防止指令重排。它确保一个线程对 `volatile` 变量的修改能立即被其他线程看到,但不能保证原子性。典型应用场景包括状态标记、双重检查锁定和安全发布对象等。`volatile` 适用于布尔型、字节型等简单类型及引用类型,不适用于 `long` 和 `double` 类型。与 `synchronized` 不同,`volatile` 不提供互斥性,因此在需要互斥的场景下不能替代 `synchronized`。
2062 3
|
1月前
|
Java 编译器
Java重复定义变量详解
这段对话讨论了Java中变量作用域和重复定义的问题。学生提问为何不能重复定义变量导致编译错误,老师通过多个示例解释了编译器如何区分不同作用域内的变量,包括局部变量、成员变量和静态变量,并说明了使用`this`关键字和类名来区分变量的方法。最终,学生理解了编译器在逻辑层面检查变量定义的问题。
Java重复定义变量详解
|
1月前
|
Java
Java基础之数据类型
Java基础之数据类型
20 6
|
1月前
|
Java
在Java中如何将基本数据类型转换为String
在Java中,可使用多种方法将基本数据类型(如int、char等)转换为String:1. 使用String.valueOf()方法;2. 利用+运算符与空字符串连接;3. 对于数字类型,也可使用Integer.toString()等特定类型的方法。这些方法简单高效,适用于不同场景。
58 7
|
1月前
|
JavaScript 前端开发 Java
java中的this关键字
欢迎来到我的博客,我是瑞雨溪,一名热爱JavaScript与Vue的大一学生。自学前端2年半,正向全栈进发。若我的文章对你有帮助,欢迎关注,持续更新中!🎉🎉🎉
53 9
|
1月前
|
设计模式 JavaScript 前端开发
java中的static关键字
欢迎来到瑞雨溪的博客,博主是一名热爱JavaScript和Vue的大一学生,致力于全栈开发。如果你从我的文章中受益,欢迎关注我,将持续分享更多优质内容。你的支持是我前进的动力!🎉🎉🎉
52 8
|
1月前
|
Java 程序员 容器
Java中的变量和常量:数据的‘小盒子’和‘铁盒子’有啥不一样?
在Java中,变量是一个可以随时改变的数据容器,类似于一个可以反复打开的小盒子。定义变量时需指定数据类型和名称。例如:`int age = 25;` 表示定义一个整数类型的变量 `age`,初始值为25。 常量则是不可改变的数据容器,类似于一个锁死的铁盒子,定义时使用 `final` 关键字。例如:`final int MAX_SPEED = 120;` 表示定义一个名为 `MAX_SPEED` 的常量,值为120,且不能修改。 变量和常量的主要区别在于变量的数据可以随时修改,而常量的数据一旦确定就不能改变。常量主要用于防止意外修改、提高代码可读性和便于维护。