教育路上

全国站>Java>Java初学>第2章Java入门
学员需求

第2章Java入门

摘要:第2章Java入门,转义字符,java定义变量的格式。以下是我们为大家整理的,相信大家阅读完后肯定有了自己的选择吧。

2023-02-16 17:02网络推荐

发布时间:
2023-02-16 17:02
信息来源:
网络推荐
浏览次数:
1057
第2章Java入门

转义字符:

在输出当中\n代表换行

\\n表示不转义,输出\n

想要输出“”必须在引号前加\


java定义变量的格式:数据类型 变量名=变量值;

变量符号:

定义整型变量:int、byte、short、long

定义浮点型:float、double

定义字符型:char

定义布尔型:boolean(只能赋值为true或者false)

定义类:class

定义接口:interface

定义数组:[]

定义long类型变量,必须以"l"或"L"结尾

定义float类型变量时,变量要以"f"或"F"结尾




命名规定

可以由:字母,数字,_,$组成,但不能以数字开头

不能与关键字,保留字重名

不能包含空格


约定俗成:

望文生义,见名知义

类名由一个或多个单词组成,每个单词首字母大写(大驼峰)

函数名,变量名由一个或多个单词组成,首单词首字母小写,拼接词首字母大写(小驼峰)

包名全小写,只可以使用特殊字符"“并且不以”"开头或结尾

常量全大写,多个单词之间有下划线_分隔


变量

程序运行过程中我们经常需要用一个东西来临时计算过程中的数据,这个东西就是变量。


在程序运行的过程中,变量的值可以再一定范围内变化


定义格式

1光定义,不赋值

格式:数据类型 变量名;


int num;//光定义一个int类型的变量num,但是还没有进行赋值


2定义并赋值


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


int num = 1024;


注意事项

1变量有其作用范围,它的作用访问是定义他的那行代码所在的大括号内。


2在同一个大括号中定义的变量名不能重复。


3变量在使用之前,必须先初始化(赋值)。


4定义long类型的变量时,需要在整数的后面加L(大小写均可,建议大写)。因为整数默认是int类型,加L相当于告诉计算机这个整数很特殊是long类型的。定义float类型的变量时,需要在小数的后面加F(大小写均可,建议大写)。因为浮点数的默认类型是double, 加F相当于告诉计算机这个小数很特殊是float类型的


数据类型

基本数据类型:包括 整数、浮点数、字符、布尔。

引用数据类型:包括 类、数组、接口,枚举,注解

除了8种基本数据类型外,都属于引用数据类型

整形


类型 字节 取值范围(二进制) 取值范围(十进制)

byte 1字节 -2 ^ 7~2 ^7-1 -128~127

short 2字节 -2^15 ~2 ^15-1 -32768~32767

int 4字节 -2^31~2 ^31-1

long 8字节 -2^63 ~2 ^63-1

Java中的默认类型:整数类型是int 、浮点类型是double

浮点型


类型 字节 取值范围 取值范围

float 4字节

double 8字节

long类型:建议数据后加L表示。

float类型:数据后必须加F或者f表示。


基本数据类型(8种):byte、short、int、long、float、double、char、boolean


引用数据类型:类、数组、接口,枚举,注解


byte中最大值为127最小值为-128,整数类型不能是小数。


float类型后面数值必须跟f同理long类型后面必须跟l因为在java中默认的整数为int,小数为double


算术表达式中包含不同的基本数据类型的值的时候,整个算术表达式的类型会自动进行提升。

提升规则:

byte类型,short类型和char类型将被提升到int类型,不管是否有其他类型参与运算。


boolean类型不能与其它数据类型运算


当把任何基本数据类型的值和字符串(String)进行连接运算时(+),基本数据类型的值将自动转化为字符串(String)类型。


整个表达式的类型自动提升到与表达式中最高等级的操作数相同的类型

等级顺序:byte,short,char --> int --> long --> float --> double-->string


分析


public static void main(String[] args){

byte b1=1;

byte b2=2;

byte b3=1 + 2;

byte b4=b1 + b2;

Systemoutprintln(b3);

Systemoutprintln(b4);

}


分析:b3 = 1 + 2 ,1和 2 是常量,为固定不变的数据,在编译的时候(编译器javac),已经确定了1+2 的结果并没有超过byte类型的取值范围,可以赋值给变量b3 ,因此b3=1 + 2是正确的。


反之,b4 = b2 + b3,b2 和 b3 是变量,变量的值是可能变化的,在编译的时候,编译器javac不确定b2+b3的结果是什么,因此会将结果以int类型进行处理,所以int类型不能赋值给byte类型,因此编译失败


自动类型转换

自动类型转换:低级别–>高级别

强制类型转换:高级别–>低级别


将取值范围小的类型自动提升为取值范围大的类型

数据绝对安全的类型转换是可以自动转换的直接书写即可


double num = 1024;//  int -> double   安全

long l = 1024;//int -> long  安全

double num2 = 314F;//float -> double


强制类型转换

强制类型转换:高级别–>低级别

将取值范围大的类型强制转换成取值范围小的类型


转换后可能导致出现问题(数据溢出,丢失数据精度)的类型转换叫做强制类型转换。因为可能出现问题必须给计算机一个特殊标识,格式如下:


目标数据类型 变量名 = (目标数据类型)值或者变量;


算术运行符

其实就是常见的数学运行符,不过有些地方有点不同


符号 作用 不同之处

+ 加 单纯使用数字参与运算的时候和数学中的+没有不同

- 减 无

* 乘 无

/ 除 整数相除只能得到整数,如果想得到小数必须使用小数参与计算 例如: int num = 10/3; //num的值为3而不会是3333

% 取余 获取的是两个数据做整除后得到的余数 int num = 10%3;

对于除号“/”,它的整数除和小数除是有区别的:整数之间做除法时,只保留整数部分而舍弃小数部分


如果字符参与了运算:


char类型参与算术运算,会把字符转换成对应的数字(参照 ASCII 码表)然后参与运算。


char c = 'A';

Systemoutprintln(c+0); //65


如果字符串参与了+运算:


当“+”操作中出现字符串时,这个”+”是会进行字符串的拼接,而不会进行数据的计算


Systemoutprintln("dyk"+123+"666"); //dyk123666

1

判断下面代码的执行结果


Systemoutprintln('a'+10+"bc"+'d'+10);//107bcd10

1

Java中,整数使用以上运算符,无论怎么计算,也不会得到小数


public static void main(String[] args) {

int i = 123456;

Systemoutprintln(i/1000*1000);//计算结果是123000

}


赋值运算符

可以用来修改变量的值。赋值运行符左边写要被修改值的变量名,右边写参与计算的值,这个值可以是具体的值也可以是变量。


符号 功能 举例

= 赋值 a=10,将10赋值给变量a

+= 加后赋值 a+=10; //相当于a =(a的数据类型) (a + 10);

-= 减后赋值 a-=b;//相当于a =(a的数据类型) (a - b);

*= 乘后赋值 a*=b;//相当于a =(a的数据类型) (a * b);

/= 除后赋值 a/=b;//相当于a =(a的数据类型) (a / b);

%= 取余后赋值 a%=b;//相当于a =(a的数据类型) (a % b);

public static void main(String[] args){

short s = 1;

s+=1;

Systemoutprintln(s);

}


分析: s += 1 逻辑上看作是s = s + 1 计算结果被提升为int类型,再向short类型赋值时发生错误,因为不能将取值范围大的类型赋值到取值范围小的类型。但是,s=s+1进行两次运算,+= 是一个运算符,只运算一次,并带有强制转换的特点,也就是说s += 1 就是s = (short)(s + 1),因此程序没有问题编译通过,运行结果是2。


因此,这里要说一点的是,赋值运算符默认进行了强制类型转换


逻辑运算符

符号 作用 说明

& 逻辑与 理解成并且的意思,左右两边都要为真才为真

| 逻辑或 理解成或者的意思,左右两边只要有一个为真就为真

^ 逻辑异或 左右两边不同结果才为真

! 逻辑非 取反

&& 短路与 作用和&相同,但是有短路效果

|| 短路或 作用和|相同,但是有短路效果

短路效果:左边表达式的结果确定之后,如果整个表达式的结果已经被确定了,就不会去执行右边的表达式


&    不管前面是不是false都会执行后面


&&   如果前面是false就不会再执行后面的


逻辑与&,无论左边真假,右边都要执行。


短路与&&,如果左边为真,右边执行;如果左边为假,右边不执行。


逻辑或|,无论左边真假,右边都要执行。


短路或||,如果左边为假,右边执行;如果左边为真,右边不执行


public static void main(String[] args)  {

int x = 3;

int y = 4;

Systemoutprintln((x++ > 4) & (y++ > 5)); // 两个表达都会运算

Systemoutprintln(x); // 4

Systemoutprintln(y); // 5

Systemoutprintln((x++ > 4) && (y++ > 5)); // 左边结果为false,右边不参与运算

Systemoutprintln(x); // 4

Systemoutprintln(y); // 4

}


自增自减运算符

符号 作用 举例

++ 自增 a++;//相当于a = a+1;

– 自减 a–;//相当于a = a - 1;

注意:


++和–可以写在变量的前面也可以写在变量的后面,单独写的时候写前面写后面都没有区别区别就在和其它运算符一起写

++写在变量前的时候先自增然后再参与其他运算

++写在变量后面的时候先参与其它运算后自增


++和-- 既可以放在变量的后边,也可以放在变量的前边。


单独使用的时候, ++和-- 无论是放在变量的前边还是后边,结果是一样的。


参与操作的时候,如果放在变量的后边,先拿变量参与操作,后拿变量做++或者--。


参与操作的时候,如果放在变量的前边,先拿变量做++或者--,后拿变量参与操作


int a = 5;

int c = 10;

int b = 20;

int d = ++a+b+++c+++(a+b);

Systemoutprintln(d);//63

上一篇:
第1章java概述
下一篇:
java循环结构
网友评论
发布评论

访客的评论 2024/06/19 12:19

文中描述的是准确的吗,如何报名!

相关推荐
我也来发表评价关闭
我对该内容的评价:
0
评价500
验证码: 看不清 换一张
提交 (匿名发布,无须担心别人知道您的身份)
学校免费发布信息关闭
我们审核后会尽快展示,如有图片请发邮件到:edu63@foxmail.com

姓      名:

内      容:

手机号码:

验  证  码:  换一张

确认提交
填写需求信息关闭
我们会根据您的需求匹配并审核留言

姓      名:

意向城市:

留      言:

手机号码:

验  证  码:  换一张

确认提交
完善补充本文信息关闭
非常感谢您帮助完善补充本文信息


 换一张

确认提交