f2/fn+f2:选中点中的文件名
1.注释
为什么要有注释?
给别人和以后的自己可以看懂的解释
注释含义
注释是在程序指定位置的说明性信息;简单理解,就是对代码的一种解释
注释分类
单行注释
//注释信息
多行注释
/*注释信息*/
文档注释
/**注释信息*/
(文档注释暂时用不到)
public class HelloWorld{
//mian方法,表示程序的主入口
public static void main(String[] args){
//输出语句(打印语句)
/*会把小括里面的内容
进行输出打印*/
System.out.println("你好,世界");
}
}
编译没有问题,证明代码的语法没有问题
注释的使用细节
- 注释的内容不参与编译,也不参与运行,仅仅是对代码的解释说明(注释只在java文件中存在,编译成class文件就不存在了)
- 单行注释//可以嵌套注释(但不要);多行注释/**/不可以嵌套注释(多行注释会把/*匹配到的第一个*/作为结束)
2.关键字
什么是关键字
被java赋予特定含义的英文单词
关键字的特点
- 关键字的字母全部小写
- 常用的代码编辑器,针对不同的关键字有特殊的颜色标记,非常直观
class关键字的含义
class用于创建(定义)一个类,后面跟随类名
class 类名{类的范围}
类:是Java最基本的组成单元
3.字面量
告诉程序员:数值在程序中的书写格式
有的地方称之为:常量、字面值常量
字面量的分类
整数、小数、字符串(“”)、字符(‘’)、布尔(true、false)、空(“null”)
null不能直接打印,打印null用字符串的形式打印
public class ValueDemo1{//类名要和.java文件名保持一致
//mian方法,表示程序的主入口
public static void main(String[] args){
//常见的数据在代码中是如何书写的
//整数
System.out.println(666);
System.out.println(-777);
//小数
System.out.println(1.93);
System.out.println(-3.71);
//字符串
System.out.println("程序员");
System.out.println("Chan");
//字符
System.out.println('男');
System.out.println('女');
//布尔
System.out.println(true);
System.out.println(false);
//空
//null不能直接打印,打印null用字符串的形式打印
System.out.println("null");
}
}
4.特殊字符
'\t' '\r' '\n' ...
\t 制表符
在打印的时候,把前面字符串的长度补齐到8,或者8的整数倍。最少补1个空格,最多补8个空格。
让内容在上下是对齐的(一般在一行中的中间部分使用)
public class ValueDemo1{//类名要和.java文件名保持一致
//mian方法,表示程序的主入口
public static void main(String[] args){
System.out.println("name"+'\t'+"age");
System.out.println("tom"+'\t'+"23");
}
}
5.变量
变量定义
在程序的执行过程中,其值有可能发生改变的量(数据)
变量的使用场景
- 重复使用某个值
- 某个数据经常发生改变
当某个数据经常发生改变时,我们可以用变量存储。当数据变化时,只要修改变量里面记录的值即可。
变量的定义格式
数据类型 变量名 = 数据值;
数据类型:为空间中存储的数据,加入类型限制
变量名:为空间起的名字
数值:存在空间里面的数值
;表示语句的结束
public class VariableDemo1{
public static void main(String[] args){
//定义变量
//数据类型 变量名 = 数据值;
//数据类型:限定了变量能存储数据的类型
//int(整数) double(小数)
//变量名:就是存储空间的名字
//作用:方便以后使用
//数据值:真正存在变量中的数据
//等号:赋值。把右边的数据赋值给左边的变量
int a=10;
System.out.println(a);
}
}
变量的使用方式
- 输出打印
- 参数与计算
- 修改变量记录的值(变量同时只能记录一个值)
public class VariableDemo2{
public static void main(String[] args){
//基本用法
//1.定义变量,再进行输出
int a=10;
System.out.println(a);//10
System.out.println(a);//10
System.out.println(a);//10
//2.变量参与计算
//int a=10变量的名字不能重复
int b=10;
int c=20;
System.out.println(b+c);
//3.修改变量记录的值
a=50;
System.out.println(a);//50
}
}
变量的注意事项
1.只能存一个值
2.变量名不允许重复定义
3.一条语句可以定义多个变量(中间用“,”隔开)
public class VariableDemo2{
public static void main(String[] args){
//变量的注意事项
//在一条语句中,可以定义多个变量
int d=100,e=200,f=300;
System.out.println(d);
System.out.println(e);
System.out.println(f);
}
}
4.变量再使用之前一定要进行赋值
没有赋值的变量是不能使用的,赋值和打印顺序也是很重要的
public class VariableDemo2{
public static void main(String[] args){
int g;
System.out.println(g);//这样打印是错误的
}
}
public class VariableDemo2{
public static void main(String[] args){
int g;
System.out.println(g);//这样打印是错误的
g=500;//在打印(使用)之前赋值也是不行的
}
}
public class VariableDemo2{
public static void main(String[] args){
//变量在使用之前必须要赋值
int g;//定义
g=500;//赋值
//建议:以后在定义变量的时候,请直接赋值,不要把定义和赋值分开
System.out.println(g);
}
}
5.变量的作用域范围
变量的练习
public class VariableTest{
public static void main(String[] args){
//一开始没有乘客
int count = 0;
//第一站:上去一位乘客(在原有的基础上+1)
//先计算等号右边的,计算好之后,赋值给等号左边
count = count+1;
//System.out.println(count);
//第二站:上去两位乘客,下来一位乘客
count = count + 2 - 1;
//第三站:上去两位乘客,下来一位乘客
count = count + 2 - 1;
//第四站:下来一位乘客
count = count -1;
//第五站:上去一位乘客
count = count + 1;
//请问:到了终点,车上一共几位乘客
System.out.println(count);
}
}
6.进制
6.1十进制
十进制 0 1 2 3 4 5 6 7 8 9
逢十进一
借一当十
十进制的运算过程
6.2二进制
逢二进一
借一当二
二进制的运算过程
十进制中的0——二进制中的0
十进制中的1——二进制中的1
十进制中的2——二进制的中10
十进制中的3——二进制的中11
十进制中的4——二进制的中100
6.3常见的进制
二进制:由0和1组成,代码中以0b开头
十进制:由0~9组成,前面不加任何前缀
八进制:由0~7组成,代码中以0开头
十六进制:由0~9还有a~f组成,代码中以0x开头
[0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [a] [b] [c] [d] [e] [f]
(以上的规则是JDK7以上的特性)
在以前计算机区分的是用孔和没孔,现在是区分0和1
6.4进制之间的转换
公式:系数*基数的权次幂 相加
6.4.1任意进制转十进制
系数:每一位上的数
基数:当前进制数(几进制就是几) //基数要是对应进制范围之内的数字
权:从右往左,一次为0 1 2 3 4 5 ...
二进制转十进制
8421快速转换法
每一位二进制值的1都是代表一个固定数值
把每一位的1代表的十进制数加起来得到的结果就是它所代表的十进制数。
6.4.2十进制转任意进制
除基取余法
不断的除以基数(几进制,基数就是几)得到余数,直到商为0,再将余数倒着拼起来
6.5小结
7.计算机的存储规则
在计算机中,任意数据都是以二进制的形式来存储的
(任何进制都是转成二进制再进行存储)
7.1计算机中的数据
7.1.1Text文本数据
数字:转换成二级制
字母:查询对应的ASCII码表,找到对应的数字,再转换成二进制
汉字:查询对应的码表,找到对应的数字,再转换成二进制
- GB2312编码:1981年5月1日发布的简体中文汉字编码国家标准。收录7445个图形字符,其中包括6763个汉字。
- BIG5编码:台湾地区繁体中文标准字符集,共收录13053个中文字,1984年实施。
- GBK编码:2000年3月17日发布,收录21003个汉字,包含国家标准GB13000-1中的全部中日韩汉字,和BIG5编码中的所有汉字。
- Unicode编码:国际标准字符集,它将世界各种语言的每个字符定义一个唯一的编码,以满足跨语言、跨平台的文本信息转换。
7.1.2Image图片数据
通过每个像素中的RGB三原色来存储
2K屏、4K屏(这说的是最大分辨率)
黑白图
灰度图
彩色图
用0-255*255*255表示颜色的数据
三原色
255——1111 1111——FF
- 计算机中的颜色采用光学三原色。
- 分别为:红,绿,蓝。也称之为RGB
- 可以写成十进制形式。(255,255,255)
- 也可以写成十六进制形式。(FFFFFF)
7.1.3Sound声音数据
对声音的波形进行采样再存储
氪金:和红色的波形一样,听到的音质是和原本的声音一致的
不氪金:只是按照黑点的走向去画,不一定是什么样子
视频是很多图片和声音的组合体
8.数据类型
数据类型 变量名 = 数据值;
8.1基本数据类型
(4类,8种)
byte的取值范围是:-127-128
整数和小数取值范围大小关系:double>float>long>int>short>byte
long类型变量:需要加入L标识(大小写都可以,推荐大写)
float类型变量:需要加入F标识(大小写都可以,推荐大写)
long类型变量在定义的时候,要在后面加上L
public class VariableDemo3{//类名一定要和文件名保持一致
//主入口
public static void main(String[] args){
//整数
//byte
byte b = 10;//-128-127
System.out.println(b);
//short
short s = 20;
System.out.println(s);
//int
int i=30;
System.out.println(i);
//long
//如果要定义long类型的变量
//再数据值的后面需要加一个L作为后缀
//L可以是大写的也可以是小写的(建议大写)
long n = 999999999L;
System.out.println(n);
//float
//定义float类型的变量的时候
//数据值也需要加上一个F作为后缀
float f = 10.1F;
System.out.println(f);
//double
//定义double类型的变量的时候不需要加后缀
double d=20.2;
System.out.println(d);
//char
char c ='中';
System.out.println(c);
//boolean
//true false
boolean o =true;
System.out.println(o);
}
}
数据类型练习
练习一
public class VariableTest2{
public static void main(String[] args){
//定义变量记录姓名
String name = "张三";
//定义变量记录年龄
int age = 18;
//定义变量记录性别
char gender = '男';
//定义变量记录身高
double height = 180.1;
//定义变量记录是否单身
//true是单身,false不是单身
boolean flag = true;
//输出变量的值
System.out.println(name);
System.out.println(age);
System.out.println(gender);
System.out.println(height);
System.out.println(flag);
}
}
练习二
public class VariableTest3{
public static void main(String[] args){
//定义变量记录电影的名字
String name = "送初恋回家";
//定义变量记录主演的名字
String tostar = "刘鑫 张雨提 高媛";
//定义变量记录电影的年份
int year = 2020;
//定义变量记录主演的评分
double grade = 9.0;
//输出所有变量的值
System.out.println(name);
System.out.println(tostar);
System.out.println(year);
System.out.println(grade);
}
}
8.2引用数据类型
(会在后面学习数组和面向对象的时候学到)
9.标识符
(所对应的就是变量名)
什么是标识符
标识符:给类、方法、变量等起的名字
阿里巴巴规范
标识符命名规则
硬性要求
- 由数字、字母、下划线(_)和美元($)组成
- 不能以数字开头
- 不能是关键字
- 区分大小写
软性建议
小驼峰命名法:方法名、变量
标识符是一个单词的时候,全部小写——name
标识符由多个单词组成的时候,第一个的那次首字母小写,其他单词首字母大写——firstName
大驼峰命名法:类名
标识符是一个单词的时候,首字母大写——Student
标识符由多个单词组成的时候,每个单词的首字母大写——GoodStudent
10.键盘录入
Scanner
Java帮我们写好一个类叫Scanner,这个类就可以接收键盘输入的数字
Scanner使用步骤
以下介绍的,只能接收整数
1.导包——Scanner这个类在哪
import java.util.Scanner; //导包的动作必须出现在类定义的上边
2.创建对象——表示我要开始用Scanner这个类了
Scanner sc = new Scanner(System.in);
//这个格式里面,只有sc是变量名,可以变,其他的都不允许变
3.接收数据——真正开始干活
int i = sc.nextInt(); //这个格式李里面,只有i是变量名,可以变,其他的都不允许变
//1.导包,找到Sacnner这个类在哪
//书写要注意,写在类定义的上面
//导包的末尾要用;结束
import java.util.Scanner;
public class ScannerDemo1{
public static void main(String args[]){
//2.创建对象,表示准备要用Scanner这个类
Scanner sc = new Scanner(System.in);
System.out.println("请输入整数:");
//3.接收代码
//sc.nextInt():键盘输入什么就接收什么,再赋值给左边的变量
//变量i记录了键盘录入的数据
int i = sc.nextInt();
System.out.println(i);
}
}
Scanner练习
键盘输入数字并求和
需求:键盘录入两个整数,求出他们的和并打印出来
//1.导包
//书写要注意,写在类定义的上面
//导包的末尾要用;结束
import java.util.Scanner;
public class ScannerTest{
public static void main(String args[]){
//2.创建对象
Scanner sc = new Scanner(System.in);
System.out.println("请输入第一个数字:");
//3.接收数据
int number1 = sc.nextInt();
System.out.println("请输入第二个数字:");
//再次接收第二个数据
int number2 = sc.nextInt();
System.out.println(number1+number2);
}
}
11.IDEA
IDEA概述
Intellij IDEA
IDEA全称Intellij IDEA,是用于Java语言开发的集成环境,它是业界公认的目前用于Java程序开发的最好额工具
集成环境:把代码、编译、执行、调试等多种功能综合到一起的开发工具
IDEA下载和安装
下载:https://www.jetbrains.com/idea/
安装:傻瓜式安装,建议修改安装路径
IDEA中的第一个代码
IDEA项目结构介绍
project(项目)
module(模块)
package(包)
class(类)
多级包用“.”隔开
运行代码
控制台
IDEA基本设置
修改主题(写代码的背景颜色)
修改代码的字体
修改注释的颜色
设置自动导包
√上Add...和Optimize..
设置IDEA在提示的时候忽略大小写
去掉Match Case前面的√
给IDEA的背景设置成图片
点击Background Image选择要设置图片的位置
IDEA的项目和模块操作
类的操作
新建类
删除类
修改类名
文件名和类名要保持一致
Shift+F6
模块的操作
新建模块
file--Project Structure--module--+--Java--Next--模块名字--finish
删除模块(后续讲)
修改模块(后续讲)
导入模块(后续讲)
项目的操作
关闭项目
新建项目
打开项目(后续讲)
修改项目(后续讲)