1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > JAVA注释 关键字 标识符 常量 变量 数据类型 大小 类型转换 字符类型 (算术

JAVA注释 关键字 标识符 常量 变量 数据类型 大小 类型转换 字符类型 (算术

时间:2022-03-17 05:00:37

相关推荐

JAVA注释 关键字 标识符 常量 变量 数据类型 大小 类型转换 字符类型 (算术

注释 关键字 标识符 常量 变量 数据类型 大小 类型转换 字符类型 (算术 赋值 自增自减 比较 逻辑短路现象 位移 三元) 运算符

都是日后经常会用到的,除了运算符要多做练习。其余概念性的东西能自述说清每个是怎么回事就行。

注释

对代码作介绍解释说明的文字

对程序的设计思路进行描述,起到介绍解释说明的作用,也能使我们调试错误

注释的特点

编译器不会把注释当做程序的一部分进行解析执行过程中遇到注释就会直接跳过

注释的分类

单行注释:

使用 // 作用可以注释掉一行代码 , // 之后就是注释的部分

单行注释可以嵌套 // // //

样式://我是被注释的内容

快捷键:ctrl+/ 或 ctrl+shift+C

多行注释:

使用的符号 /* */ 两个符号中间的部分就是要被注释的内容(也可以单行注释)

多行注释不能嵌套 /* /* */ */

快捷键:ctrl+shift+/

3.文档注释

package Chating;public class Shuzu {public static void main(String[] args) {System.out.println("HelloWorld");//这是用来解释代码的单行注释/*写代码的步骤: 构思 敲代码 测试运行 找bug 完善代码*///以上是多行注释}}

关键字

是被赋予特殊含义的一些英文单词

特点

都要小写自己给标识符起名字的时候,不能和这些关键字重名有两个关键字是目前没有使用的,const goto,保留字 不代表以后不会用

标识符

用于给java中的包、类、变量、常量、接口、抽象类,枚举,起名字用的字符序列

构成规则

英文字母 a~z A~Z

数字0~9

特殊符号 $ _

不常用的字符:除了英文意外其他语言的符号 比如中文

即:标识符由字母、数字、下划线“_”、汉字、美元符号“$”组成,第一个字符不能是数字。

标识符的使用注意事项

不要和关键字重名不要使用数字开头标识符没有长度限制标识符对大小写敏感

常量

它的值在运行期间恒定不变。并且常量在程序中只能被引用,而不能被重新赋值

分类

基本数据类型的常量

整数常量:所有整数 (例:1 , 6 , 9…)小数常量:所有小数(例:1.86 , 3.14…)字符常量:用单引号括起来的单个字符 (例:‘a’ , ‘c’…)布尔常量:用来标识真假的常量 true和false

引用数据类型的常量

字符串常量:使用双引号引起来的字符 (例:”HelloWorld”)空常量:表示空,不指向任何类型:null

package Chating;public class Shuzu {public static void main(String[] args) {System.out.println(10);//整数常量System.out.println(3.14);//小数类型System.out.println('a');//字符常量System.out.println(false);//布尔常量System.out.println("String");//字符串常量String name = null;System.out.println(name);//空常量 对象为空字符串}}

变量

在程序运行过程中,其值可以发生改变的量

格式

数据类型 变量名 = 变量值(初始值);

变量代表了一块有名字的内存,内存中的数据会发生变化

数据类型

Java是强类型语言 必须在定义变量时就说明你的变量在内存中的大小,这个大小是由数据类型决定的

数据类型分类

基本数据类型:在jdk中已经定义好的一些数据类型,简单的数据段

引用数据类型:数据描述的不是数据本身,而是描述真正的数据在内存中存储的“地址”,一般都是一些自定义的类,引用相当于是基本数据类型的一个组合,形成了一个复杂的数据类型

基本数据类型:四类八种

package Chating;public class Shuzu {public static void main(String[] args) {byte b = 127;//字节变量System.out.println(b);short s = 100;//短整型System.out.println(s);int i = 200;//整型System.out.println(i);long l = 10000;//长整形System.out.println(l);float f = 3.14f;//float类型System.out.println(f);double d = 1.80;//double类型常量System.out.println(d);char a = 'A';//字符类型System.out.println(a);boolean bo = true;//boolean System.out.println(bo);}}

数据类型转换 隐式转换

当小范围的的数据类型数据给大范围的数据赋值时,小范围的数据类型会自动提升为大范围的数据类型,提升后的这数据还可以继续进行运算

byte<short=char<int<long<float<double

注意:前三者在进行运算时会自动向上转型为int类型

数据类型转换 强制(显式)转换

大范围的数据类型要转换为小范围时 就需要强制转换

格式:

​ (要转换的数据类型)大范围数据类型的数据

强制转换的运行结果,有可能出现丢失,一般不推荐使用键盘录入

package Chating;public class Shuzu {public static void main(String[] args) {int a = 100;//想转为byte//(要转换的数据类型)要转换的数据byte b = (byte)a;System.out.println("b="+b);//大范围的向向小范围转换要考虑小范围是否能装的下int a2 = 1000;//int范围-2^31 - 2^31-1byte b2 = (byte)a2;//byte范围-128 - 127System.out.println("b2="+b2);//强制转换的运行结果 因范围大小出现数据丢失}}

字符类型

用单引号括起来的单个字符 数据类型时就是char

在计算机中所有数据都是用数字表示的,字符也是,每个字符都对应着一个数字,

编码:从数字转换到字符的过程

解码:从字符转换到数字的过程

转换的过程要依赖于编码工具

ASCII标

可以发现数字字符大小写英文都是连续的

每个国家都有自己的字符 因此都需要各自的编码表 中国的编码表:GBK

GBK: 专门用来解决中文编码,包含全部中文字符。论中英皆为双字节。

UTF-8:包含全世界所有国家需要用到的字符 万国码表,英文占1个字节,中文占3个字节

Utf-8的中文字节储存空间(3个)比GBK(2个)的要高,因此对于英文字符较多的论坛适用于UTF-8节省空间。

为了统一 设计出了了个统一的编码表unicode表,每个字符都是两个字节,为每种语言中的每个字符设定了统一并且唯一的二进制编码,可以表示世界上所有国家的字符,使计算机实现跨语言、跨平台的文本转换及处理java底层就是用的unicode编码表

字符串类型

用双引号引起来的字符序列

如果是字符串类型的变量,那储存的是字符串中字符储存的地址

字符串可以和任意数据类型进行拼接,拼接后都自动转为字符串类型

因此如果要把其他类型转为字符串 直接+“”即可

例如

package Chating;public class Shuzu {public static void main(String[] args) {String name = "ings";//定义字符串类型变量System.out.println(name);double h = 1.80;System.out.println("身高为" + h);//字符串和其他类型拼接后,会自动转为字符串类型String h1 = "身高为" + h;System.out.println(h1);}}

运算符

用来运算符操作数据的符号

运算符的分类

算术运算符赋值运算符比较运算符逻辑运算符位移运算符自增自减运算符三元运算符

算术运算符

1、+:加法运算符

​ (1) 表示两个数的和

​ (2) 字符串的拼接

​ (3) 表示正数

2、-:减法运算符

​ (1) 表示负数

​ (2) 表示两个数的差

3、*:乘法运算符

​ (1) 求两个数的乘积

4、/:除法运算符

​ (1) 两边都是整数,只能得到整数部分

​ (2) 两边中有一个是小数,得到就是小数

​ (3) 除数不能为0

5、%:取余运算符

​ (1) 用来求两个数据的余数部分

​ (2) 两边都是整数,余数也是整数

​ (3) 两边中有一边是小数,结果就是小数

​ (4) 作用:判断奇偶,对2 取余 等于0 就是偶数,否则奇数

package Chating;public class Shuzu {public static void main(String[] args) {String str = "Hello"+"World";//表示字符串的拼接System.out.println(str);int a = 7;int b = 3;double c = 6.3;int res = a/b;//两边都是整数的时候 只能得到整数部System.out.println("a/b的值为"+res);}}

赋值运算符

把赋值运算符右边的数据赋值给左边的变量

赋值运算符: =

+= i = i + 1; i += 1;

-= i = i - 3; i -= 3;

*=

/=

%=

package Chating;public class Shuzu {public static void main(String[] args) {int a = 7;int b = 3;b += a;//b = b+aSystem.out.println(b);int c = 2;c -= a;//c = c-aSystem.out.println(c);int d = 4;d *= a;//d = d*aSystem.out.println(d);int e = 21;e /= a;//e = e/aSystem.out.println(e);int f = 21;f %= a;//f = e%fSystem.out.println(f);}}

自增自减运算符

1、++ 和 –

2、++:自增运算符

3、作用:在某个变量的基础上自增1

4、++在单独使用的时候放在变量前后没有任何区别

5、++在变量前,先对变量+1,再取值进行运算,++在变量后,先取的值,再进行运算,无论是在前还是在后,变量最终都会+1

package Chating;public class Shuzu {public static void main(String[] args) {int a = 1;++a;//a += 1 a = a + 1;System.out.println(a);int b = 2;System.out.println(b++);//先取值 再计算 这里打印的是2(先取值)打印完在进行b+1的运算System.out.println("b的值为"+b);System.out.println("-----------------");int c = 2;int result = ++c + 3 + c++;// 3+3+3(c++ = 3++ 这里先取值3,再进行3+1的计算)System.out.println(result);System.out.println("c的值为"+c);}}

比较运算符

1、用于比较两个数据是否相等或者大小关系的运算符,返回的值为布尔类型

分类:

是否相等: == != 这两个符号可以比较任意数据类型的

大小关系: > < >= <= 这四个只能比较基本数据类型的数据(整数,小数,字符)

返回结果都是boolean类型的,true是真 false是假

package Chating;public class Shuzu {public static void main(String[] args) {int a = 8;int b = 18;int c = 8;System.out.println(b==a);//a与b不相等 返回的是布尔类型的falseSystem.out.println(c!=a);//c与b相等 返回同为falseSystem.out.println((a=c)<=b);//8=8<=18 }}

逻辑运算符

用来处理逻辑运算的符号

处理的结果就是boolean类型的数据

&& || !

1.&&逻辑与,同真为真,否则为假

​ (1) true && true true

​ (2) true && false false

​ (3) false && true false

​ (4) false && false fasle

2.||逻辑或,同假为假,否则为真

​ (1) false || false false

​ (2) true || false true

​ (3) false || true true

​ (4) true || true true

3.!逻辑非 ,遇真为假,遇假为真

​ (1) !true false

​ (2) !false true

package Chating;public class Shuzu {public static void main(String[] args) {boolean a = 3 > 1 && 2 == 2;//同真为真System.out.println(a);boolean b = 3 > 1 && 2 != 2;//一边为假就为假System.out.println(b);boolean c = 3 < 1 && 2 != 2;//同假为假System.out.println(c);System.out.println("--------------------");boolean a1 = 3 > 1 || 2 == 2;//同真为真System.out.println(a1);boolean b1 = 3 > 1 || 2 != 2;//一边为真就为真,否则为真System.out.println(b1);boolean c1 = 3 < 1 || 2 != 2;//同假为假System.out.println(c1);System.out.println("============================");int i= 1;boolean a2 = 3 < 1 & i++ > 0;System.out.println(a2);System.out.println(i);//i = 2int i2= 1;boolean a3 = 3 < 1 && i2++ > 0;//短路现象System.out.println(a3);System.out.println(i2);//i = 1//&&相比于&作用相同,但&&存在短路现象,当前一布尔值已确定为false时,就不会进行后一布尔值的判断//因为无论后一布尔值为真为假,此次整个式子的布尔值都为false,因此没有进行后一布尔值判断的必要System.out.println("--------------------");int j = 3;boolean b2 = j > 2 | ++j > 1;System.out.println(b2);System.out.println(j);//j = 4int j2 = 3;boolean b3 = j2 > 2 || ++j2 > 1;System.out.println(b3);System.out.println(j2);//j = 3//同理的短路现象,||在判断一布尔值已确定为true时,论后一布尔值为真为假,整个式子的布尔值都为true,就不会进行后一布尔值的判断}}

位移运算符

对于数据在内存中的表示,按照位移的方式进行运算的符号,以此达到对数据计算的目的

位移运算符只能对整数的数据进行操作,结果还是整数

<< >> >>>

2、<<:左移运算符,每移动一位,就相当于把数字扩大为原来的2倍,移动几位,就相当于乘以2的几次方

3、>>:右移运算符,每移动一位,就相当于把数字缩小了2倍,移动了几位,就相当于除以2的几次方

4、>>>:和右移一样,只不过只能操作正数

package Chating;public class Shuzu {public static void main(String[] args) {int i = 10;System.out.println(i << 1); // i * 2System.out.println(i << 2); // i * 2 * 2int j = 32;System.out.println(j >> 1); // j / 2System.out.println(j >> 2); // j / 2 / 2int a = -8;System.out.println(a >>> 2);}}

三元运算符

可以操作三个数据或者三个表达式

格式

​ 表达式1 ? 表达式2 : 表达式3;

流程

1. 判断表达式1的布尔值返回类型2. 如返回值为**true**,就把**表达式2**的值作为整个三元运算符表达式的结果3. 如返回值为**false**,就把**表达式3**的值作为整个三元运算符表达式的结果

package Chating;public class Shuzu {public static void main(String[] args) {int a = 4 < 3 ? 233 : 996;//表达式 1 ? 表达式 2: 表达式3System.out.println(a);//a = 996 因为4不大于3为false,所以返回的是表达式2(996)的结果int b = 6 < 9 ? 666 : 512;System.out.println(b);//b = 996 因为6小于9为true,所以返回的是表达式1(666)的结果}}

JAVA注释 关键字 标识符 常量 变量 数据类型 大小 类型转换 字符类型 (算术 赋值 自增自减 比较 逻辑短路现象 位移 三元) 运算符

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。