一、几个基础——注释、关键字、字面量、变量
- 注释
为了方便别人或自己以后阅读该代码
1.单行注释:
//后面根解释文字
2.多行注释
/*
可以写多行注释
*/
3.文档注释
/**
这里写文档注释
也可以写多行,文档注释可以利用JDK的工具生成帮助文档
*/
注释快捷键
Ctrl + / 单行注释(对当前行进行注释)
Ctrl + Shift + / 对选中的代码进行多行注释。
代码整理快捷键
Ctrl + Alt + L
-
关键字
- 字是java语言中有特殊含义的单词。例如用int表示整数
- 关键字不用特殊的识别,在编译器中一般有特殊的颜色表示
- 最基本的关键字class,所有的代码必须写在类之下
-
字面量
- 什么是字面量:就是被规定好的一种常量的定义格式
- 常见的有:整数类型、小数类型、字符串类型、字符类型…
//1.整数
System.out.println(666);
//2.小数
System.out.println(3.66);
//3.字符: 字符必须用单引号引起来
System.out.println('a');
System.out.println('0');
System.out.println('汉字');
System.out.println(' '); //空格也算字符
//特殊字符:\t表示制表符 \n表示换行
System.out.println('\t'); //这相当于一个tab键,叫做制表符用于将前面的字符串补齐8位,用于打印时的数据对齐
System.out.println("asd"+"\t")
System.out.println('\n'); //这是换行的意思
//4.字符串:字符串是双引号引起来的
System.out.println("我爱你");
//5.布尔值:true和false
System.out.println(true);
System.out.println(false);
//6.空类型
System.out.println("null")
//打印空类型只能以字符串类型
-
变量
- 什么是变量:内存中用于存放数据的一块区域,当一个数据不断改变值的时候需要设置变量
- 变量的定义
数据类型 变量名 = 数值数据
int a=123
- 变量使用的注意事项
1.变量定义在哪个{}范围内,就只在哪个大括号内有效。
{
int a = 10;
System.out.println(a); //这是是对的
}
System.out.println(a); //这里会出错
2.在同一个作用域内,不能有两个同名的变量
{
int a = 10;
int a = 20; //此时会有报错
}
3.变量没有初始化只,不能直接使用
int a; //仅仅定义了变量,但是没有初始值
System.out.println(a); //会报错
4.多变量定义 如:
int a=10, b=20; //a和b都是int类型,但一般都是逐个定义
//建议以后在定义变量时直接赋值
二、数制的相关问题
不同数制的表现形式
//二进制
由0、1组成,在代码中以0b开头
//八进制
由0~7组成,以0开头
//十进制
由0~9组成,前面可以不用加任何前缀
//十六进制
由0~9、A~F组成,前面需要以0x开头
三、变量的相关知识
1.数据类型
Java的数据类型分为两大类: 基本数据类型、引用数据类型。
a. 基本类型有四种
- 整数:byte(-128–127)、short(-32768~32767)、int(10位)、long(19位)
- 浮点数: float、double
- 字符:char
- 布尔:boolean
b.数据类型的定义
public class TypeDemo1 {
public static void main(String[] args) {
// 1、整型
byte number = 98;
System.out.println(number);
short number2 = 1000;
int number3 = 123; // 默认
// 注意:随便写一个整型字面量,默认是int类型的,73642422442424虽然没有超过long的范围,但是它超过了本身int的范围了。
// 如果希望随便写一个整型字面量是long类型的,需要在其后面加上L/l
long number4 = 73642422442424L;
// 2、浮点型
//注意:
//随便写一个小数字面量,默认当成double类型对待的,
//如果希望这个小数是float类型的,需要在后面加上:F/f
float score1 = 99.5F; //float定义
double score2 = 99.8; // 常用方案。
// 3、字符型
char ch1 = 'a';
char ch2 = '中';
char ch3 = '国'; //必须为单个字符,不能是字符串
// 4、布尔型
boolean b1 = true;
boolean b2 = false;
// 引用数据类型:String.
// String代表的是字符串类型,定义的变量可以用来记住字符串。
String name = "中国";
System.out.println(name);
}
}
c.整数和小数范围大小关系
double>float>long>int>short>byte
2. 标识符
含义:对变量的命名,命名一般遵循阿里巴巴命名规范
a. 硬性要求
- 由数字、字母、下划线、美元符号开头
- 不能以数字开头
- 不能是关键字
- 区分大小写
b.软性建议
- 小驼峰命名法——针对方法、变量
- 标识符是一个单词时小写(name)
- 由多个单词组成,先小写后开头写(firstName)
- 大驼峰命名法——针对类名
- 所有单词开头全部大写
- Name
- FirstName
- 见名知意
3.键盘录入
为什么要提这个呢?
因为现在的变量都是在程序中直接定义的,未来可能有随时改变数值数据的变量
一般可以用java中已有的Scanner类来实现
【第1步】:在class类上导包:一般不需要我们自己做,idea工具会自动帮助我们导包。
import java.util.Scanner;//书写时写在类定义之上
【第2步】:得到一个用于键盘扫描器对象
//Scanner是键盘扫描器对象,这个对象有录入的功能
//sc是该对象的名字
Scanner sc = new Scanner(System.in);
【第3步】:调用sc的功能,来接收用户键盘输入的数据。
//sc对象有键盘录入整数的功能,这个功能的名字叫nextInt()
//.表示表示调用的意思
int age = sc.nextInt();
System.out.println("我的年龄是:"+age);
//sc对象有键盘录入字符串的功能,这个功能的名字叫next
String name = sc.next();
System.out.println("我的姓名是:"+name);
四、运算符和表达式
运算符:连接字面量或变量的符号(+)
表达式:用运算符连接起来的式子(1+2)
1. 算数运算符
算术运算符有
+ - * / %
,其中*
表示乘法,/
表示除法,%
表示取余数
注意:
/
中两整数相除仍为整数,小数参与计算结果可能不精确
1.1 数字相加操作
当两个相加的数据类型不一样时,会触发自动类型转换(取值范围由更大的决定,由程序自动实现),此时会向精度更高的数据类型转换。
如byte与int相加得到的结果为int型
char ch = 'a'; // 'a' 97 => 00000000 01100001
//char类型按其ASCII的值转换
int i = ch; // 发生了自动类型转换了 => 00000000 00000000 00000000 01100001
注:byte、short、char
在参与计算时会先转为int
再参与计算
byte+byte不等于byte
强制类型转换
把一个取值范围大的数值给一个取值范围小的变量,此时赋值非法
格式:目标数据类型 变量名 = (目标数据类型)被强制转换的数据
double a=123;
int b=(int)a;
double d = 99.5;
int m = (int) d; // 强制类型转换
System.out.println(m); // 丢掉小数部分,保留整数部
byte b1=10;
byte b2=20;
byte result= (byte)b1+b2;//错误
byte result= (byte)b1+(byte)b2;//错误
byte result= (byte)(b1+b2);//正确
注:若强制转换的数据过大可能产生错误
1.2 字符串相加
当加号的两侧出现字符串时,
+
变为拼接运算符
"123" + 123 = "123123"
1+99+"123"="100123" //从左到右依次运算,第一个加号两边是数字
"123"+true="123true"
若遇到变量,则用变量中的“值”参与到拼接计算
1.3 字符相加
'a'+0=97//将a的ASCII值与0相加
'a'+"abc"="aabc" //按字符串相加法则
2. 自增自减运算符
++
读作自增,--
读作自减
++:放在变量的前面或后面,对变量的值加一
–:放在变量的前面或后面,对变量的值减一
注:自增减运算符只能针对变量
int i = 10;
int rs = ++i; // 先加后用
System.out.println(rs);//rs=11
System.out.println(i);
int j = 10;
int rs2 = j++; // 先用后加
System.out.println(rs2);//rs=10
System.out.println(j);
3. 赋值运算符
=
号,意思就是把右边的数据赋值给左边的变量
int a = 10; //将数据10赋值给左边的变量a
关于赋值运算符的拓展使用
五种运算符都是先做运算再赋值
4. 关系运算符
用于判断变量与字面量之间的数值关系,返回的结果为布尔型
5. 逻辑运算符
逻辑运算符是用来将多个条件放在一起运算,最终结果是true或者false
注:java中的逻辑运算符不能连写,如5<a<10是错的。
应用逻辑与将左右小于号相连接。
最常用的三个运算符:&&、||、!
6. 三元运算符
其格式为:
在这里插入代码片关系表达式? 值1 : 值2;
三元运算的执行流程:首先计算关系表达式的值,如果关系表达式的值为true,则返回值1;如果关系表达式的值为false, 则返回值2。
示例:
需求:找出2个整数中的较大值,并输出。
int a = 99;
int b = 69;
int max = a > b ? a : b;
System.out.println(max);
7. 运算符的优先级
以下给出优先级表:
注意:如果想提高某部分的运算优先级,只需要用加括号
的方法即可。
本文为自己学习过程中的笔记f分享,如有侵权,请联系我