1.程序注释
💡 在编译时,编译器会忽略注释的存在,就好像注释内容不存在一样。所以注释并不会导致编译出错,同时注释还方便编写者和其他人阅读源代码,加强对代码的理解。
JAVA中提供三种注释方式
- 单行注释
- //注释内容
- 多行注释
- /注释内容/
- 文档注释
- /*注释内容/
/*
* 实现步骤:
* 1.定义一个类 class
* 2.编写程序执行的入口方法,main主方法
* 3.通过输出语句System.out.println()将信息”HelloWorld!”打印在控制台上
*/
// 定义一个类 class
class HelloWorld {
// 编写程序执行的入口方法,main主方法
public static void main(String[] args) {
// 通过Java提供的输出语句, 将信息”HelloWorld!”打印在控制台上
System.out.println("HelloWorld!");
}
}
2.关键字
💡 关键字是被Java语言赋予特殊含义,具有专门用途的单词
- /*注释内容/
3.标识符
💡 标识符就是名称的意思,所有的名称都统称为标识符。在定义他们时总要给它们起名字,这些名字就是标识符。
组成元素
- 英文大小写字母
- 数字字符
-
注意
数字不能开头
- 不可以使用关键字
- 严格区分大小写,不限制长度
-
标识符中常见的命名规则
包名:多单词组成时所有字母均小写,使用.连接.比如:aaa.bbb.ccc
- 类名&接口名:大驼峰式。比如:AaaBbbCcc
- 变量名&方法名:小驼峰式。比如:aaaBbbCcc
- 常量名:多单词组成是所有字母均大写,使用_连接。比如:AAA_BBB_CCC
规则 由数字,字母,下划线,美元符号&组成
1.Java所有的组成部分都是需要名字. 类名,变量以及方法名都是称为标识符
2.所有的标识符都应该以字母(A-Z或者a-z),美元符($)、或者下划线()开始
3.首字符之后可以是字母(A-Z或者a-z),美元符($)、下划线()或数字的任何字符组合
4.不能使用关键字作为变量名或方法名。
5.标识符是大小写敏感的
6.合法标识符举例: age、$salary._value、__1_value
7.非法标识符举例:123abc、-salary、#abc
4.数据类型
为什么有数据类型? 💡Java是强类型语言,对于每一种数据都定义了明确的具体数据类型,变量必须要有明确的类型,什么类型的变量装载什么类型的数据。
4.1基本数据类型
💡基本数据类型是Java语言中内置的类型,分别是整数类型、小数类型、字符类型、布尔类型。 所有变量都必须先定义后才能使用
基本数据类型分为:4类8种 整数型(byte,short,int,long) 浮点型(float,double) 字符型(char) 布尔(boolen) 布尔类型还是非数值型
数据类型 | 关键字 | 内存占用 | 取值范围 |
---|---|---|---|
整数型 | byte | 1 | -128~127 |
short | 1 | -32768~32767 | |
int | 1 | -2的31次方到2的31次方-1 | |
long | 1 | -2的63次方到2的63次方-1 | |
浮点型 | float | 4 | 负数-3.402823E+38到-1.401298E-45 |
正数1.401298E-45到3.402823E+38 | |||
double | 8 | 负数-1.79763E+308到-4.9000000E-324 | |
正数4.9000000E-324到1.79763E+308 | |||
字符型 | char | 2 | 0-65535 |
布尔型 | boolean | 1 | true false |
说明: E+38表示乘以10的38次方,同样,E-45表示乘以10的负45次方
4.2引用数据类型
💡类,接口,数组
5.常量
常量就是不变的数据量, 在程序执行的过程中其值不可以发生改变
常量分类
整数类型
- 十进制表示方式:正常数字,如 13、25等
- 二进制表示方式:以0b(0B)开头,如0b1011 、0B1001
- 十六进制表示方式:以0x(0X)开头,数字以0-9及A-F组成 如0x23A2、0xa、0x10
- 八进制表示方式:以0开头,如01、07、0721
小数类型,如1.0、-3.15、3.168等
布尔类型, true、false
字符类型,字符必须使用’’ 包裹,并且其中只能且仅能包含一个字符。如’a’,’A’, ‘0’, ‘家’
字符串类型,一种引用类型,字符串必须使用””包裹,其中可以包含0~N个字符。如”我爱Java”,”0123”,””,”null”
public class Main {
public static void main(String[] args) {
//输出整数 十进制
System.out.println(50);//50
//输出整数,二进制, 数字开头0B
System.out.println(0B11);//3
//输出整数,八进制,数字开头0
System.out.println(051);//41
//输出整数,十六进制,数组开头0X 0-9 A-F
System.out.println(0XE);//14
//输出浮点数据
System.out.println(5.0);//5.0
//输出布尔数据,只有2个值,true,false 关键字
System.out.println(true);//true
System.out.println(false);//false
//输出字符常量,单引号包裹,只能写1个字符
System.out.println('a');//a
//输出字符串常量,双引号包裹,可以写0-n个字符
System.out.println("HelloWorld");//HelloWorld
}
}
6.变量
变量本质上就是代表一个”可操作的存储空间”,空间位置是确定的,但是里面放置什么值不确定。 变量是内存中装载数据的小盒子,你只能用它来存数据和取数据。
数据类型 变量名 = 数据值;
int a = 100;
变量作为程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。
变量在使用前必须对其声明, 只有在变量声明以后,才能为其分配相应长度的存储空间。
注意事项
变量定义后可以不赋值,使用时再赋值。不赋值不能使用。
int x;
x = 20; //为x赋值20
变量不可以重复命名
public static void main(String[] args){
int x = 10;
double x = 8.5;//编译失败,变量重复定义
}
7.数据类型转换
不同类型的变量可以在一起运算,但要先进行类型转换再运算。
- 范围小的数据类型值(如byte),可以直接转换为范围大的数据类型值(如int)
- 范围大的数据类型值(如int),不可以直接转换为范围小的数据类型值(如byte)
public static void main(String[] args){
int num = 10;
double num1 = 20.9;
int avg = num*2+(int)num1
System.out.println(avg);
}
数据范围从小到大依次列出:byte -> short -> int -> long -> float -> double 自动类型转换:表示范围小的数据类型转换成范围大的数据类型。
范围大的数据类型 变量 = 范围小的数据类型值;
比如:double d = 1000;
强制类型转换:表示范围大的数据类型转换成范围小的数据类型
范围小的数据类型 变量 = (范围小的数据类型) 范围大的数据类型值;
比如:int i = (int)9.23; //i的值为9 后面砍掉
8.运算符
8.1算数运算符
运算符:对常量或者变量进行操作的符号 表达式:用运算符把常量或变量连接起来符号java语句的式子,成为表达式.不同的运算符所连接的表达式都是不同的
int a1 = 10;
int b1 = 20;
int c1 = a1 + b1;
System.out.println(c1);
+:是运算符,并且是算数运算符 a + b:是表达式,由于+是运算符,所以这个表示式叫算术表达式
算术运算符( + 加号 - 减号 * 乘 / 除 %取余 )
注意 :
- /和%的区别,两个数据做除法,/取结果的商,%取结果的余数
- 整数操作只能得到整数,想要得到小数,必须是浮点类型
8.2字符的 + 操作
int aa = 10;
char q = 'A';
System.out.println(aa + q);
1.算术表达式中包含多个基本数据类型的值的时候,整个算术表达式的类型会自动进行提升
2.byte 类型 ,short类型和char类型将会被提升到int 类型
3.整个表达式的类型自动提升到表达式中最高等级操作数同样的类型
4.顺序 byte,short,char —> int —> long —> float —>double
8.3字符串的 + 操作
System.out.println("小猪" + "佩奇");
System.out.println(1 + 90 + "野猪佩奇");
当 + 操作出现字符串时,这个 + 是字符串连接符, 而不是算术运算符
在 + 操作中 如果出现字符串和数字 数字和数值之间的+号是算术运算符 否者不是算术运算符
8.2赋值运算符
(= 赋值) (+= 加后赋值) (-= 减后赋值) (*= 乘后赋值) (/= 除后赋值) (%= 取余后赋值)
//把10赋值给int类型的变量 i2
int i2 = 10;
System.out.println(i2);
// += 把左边和右边的数据做加法操作并把结果赋值给左边
i2 += 20;
System.out.println(i2);
8.3自增自减运算符
++ 自增 变量加一 — 自减 变量减一
注意:
- ++ 和 — 既可以放在变量的后面,也可以放在变量的前面.
- 单独使用, ++ 和 — 无论是放在变量的前面还是后面,结果都一样
- 参与操作的时候,如果放在变量的后面,先拿变量参与操作,后拿变量做++或者—,
- 如果放在变量的前面,先拿变量做++或者—,后拿变量参与操作
- 最常用法:单独使用
int num = 10;
double num1 = 2.91;
int max = num * 2 + (int)num1;
max++;
System.out.println(max);
8.4关系运算符
关系运算符 成立为true 不成为false
== (a==b 判断a,b的值是否相等)
!= (a!=b 判断a,b的值是否不相等)
> (a>b 判断a是否大于b)= (a>=b 判断a是否大于等于b)
< (a <- (a<=b 判断a是否小于等于b)
int num = 10;
int num1 = 12;
System.out.println(num > num1);
//结果为false
9.数据输入语句
导包 import java.util.Scanner; 创建对象 Scanner sc = new Scanner(System.in)
接收数据 int i = sc.nextInt();
int lisi = 80;
Scanner input = new Scanner(System.in);
System.out.println("请输入张三的成绩:");
double zhangsan = input.nextDouble();
boolean isBig = zhangsan >= lisi;
System.out.println(isBig);
注意:
如果键盘录入的是整数或者是浮点型小数,注意修改的是input.next的类型
input.next(); //String
input.nextInt(); //int
input.nextDouble();//double