day01
定义格式 数据类型 变量名 = 初始化值 int a = 10;
数据类型:4类8种 基本数据类型/引用数据类型
基本:
整数:
byte 1字节 范围:-128-127
short 2字节 范围:-32768-32767
int (默认) 4字节 123
long 8字节 定义时最好加 L
浮点数:
float: 单精度 4字节 定义时最好加 F
double(默认):双精度 8字节 123.24
字符:
char 2字节 -128-127 ’a'
布尔:
boolean 1字节 范围:true/false
引用数据类型:z
类 :String 类名首字母大写
接口
数组
常见命名规则:见名知意
包:文件夹,用于对类进行分类管理。 全部小写 多级包用丶隔开 com.itheima.haha
类名:首字母大写
变量:第一个单词首字母小写 后边单词 首字母大写 nianLing
隐式转换规则:byte, short, char, int, long, float, double 从小到大转换
byte+byte 转换 int 相加最小 int
强制转换规则:目标类型 变量名 = (目标类型) (被转换的数据);byte d = (byte)(a + b);
day02
五种运算符:用于对常量和变量进行操作的符号
表达式:用运算符连接起来的符合java语法的式子,不同运算符连接的表达式是不同类型的表达式。
分类:
算术运算符:+,-,*,/, a+b 、a-b、 a*b、 a/b //整数相除只能得到整数。要想得到小数,必须有浮点数参与运算。(如‘10/3=3’ , ‘10.0/3=3.3333333’)
/:除( 取余 '%' ) 4/3 =1(商) 4%3=1(余)
字符参与加法运算: 'A' 65 'a' 97 '0' 48
字符串参与加法: 其实不是加法运算,而是字符串的拼接.(Hello10, 10Hello) 只参与加法.
空字符串 "" (10+10+"") =20
加加++ 自增 / 减减-- 自减
赋值运算符: 基本赋值运算符: =
扩展赋值运算符:+=, -=, *=, /=, ............(隐含了强制类型转换)
关系运算符: == (是否相等 true/false) != (不等于号 true /false) > >= < <=
逻辑运算符: 连接关系表达式.
与 /双与& / && (有 false则 false) 有一边不成立就不成立 区别: 双与有短路效果,左边为false 则右边不执行. 单与 : 左边无论是什么 右边.执行.
或 /双或 | / || (有 true则true) 有一边成立就成立 区别: 双与有短路效果,左边为true 则右边不执行. 单与 : 左边无论是什么 右边.执行.
亦或 ^ (相同为false 不同则true) 举例:情侣关系 (男女)
非 ! (true则false, false则true)
三元运算符: 关系表达式?表达式1:表达式2 int c = (a>b)?a:b
先计算表达式布尔值 true/false
A:如果是true 则表达式1 是结果
B:如果是 false 则表达式2 是结果
键盘录入: Scanner 类
A: 导包:
import java.util.Scanner;
顺序:package > import > class
B: 创建键盘录入对象
Scanner sc = new Scanner(System.in);
C: 获取键盘输入数据
int i = sc.nextInt();/ String i = sc.next();
day03 语句 循环
If 语句:
if(){
}else if(表达式){语句1
}else if(){语句2
}.....
else{语句n+1
}
switch 语句
switch(表达式){
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
........
default:
语句体 n+1;
break;
}
格式解释:
表达式:byte short int char
case 后0面的值:就是用来和表达式的值进行匹配的内容 只能是常量
break:中断
default:所有值都不匹配 执行default
for循环语句
for(int i = 1;i<=1000;i++){
循环体语句System.out.println("我错了");
}
适用于 知道循环多少次的时候。
while 循环
int i = 1;
while(i<=100){
syso(循环体) sun += x
i++
}
do...while 循环
格式 初始化语句
do{
循环语句;
控制条件语句;
}while(判断条件语句);
int i = 1;
do {
syso(循环语句);
i++;
}while(i<=100);
区别:A: do...while 循环至少执行一次循环
B: for/while 循环必须判定条件成立才能执行循环
推荐使用循环顺序:for---- while------ do.... while
break:中断
continue:中断一次(跳过) 再执行
day04 数组
随机数:Random
导包: import java.util.Random;
创建对象: Random r = new Random();
获取随机数: int number = r.nextInt(10)
范围:[0-10) 包括0 不包括10
数组
格式:数据类型[] 数组名 ( int[] arr )定义了一个int类型的数组,数组名是arr。
int[] arr = new int[5];
数组初始化:A: 动态初始化 只给出长度,由系统给出初始值。
数据类型[] 数组名 = new 数据类型[]
int[] arr = new int[5]
输出:System.out.println( arr[2] ) arr数组名 + [2] 索引/角标 从0开始
B:静态初始化 给出初始化值,由系统决定长度。
静态格式:int[] arr = new int[] {1,2,3}
int[] arr = {1,2.3}
java中的内存分配:栈 堆 方法区 int[] arr : arr存的地址值
本地方法区 寄存器
栈:存储局部变量 定义在方法中的变量 (main方法)
堆:存储的是new出来的东西、实体、对象。每一个对象都有地址值/每一个对象数据都有默认值
bete short int long 默认值 0
folat double 0.0
char '' 空字符
boolean false
引用类型 null
一维数组操作之遍历数组
for循环
for(int i = 0;i<arr.length;i++){}
比较大小 先给一个值 int max = arr[0] int min = arr[0]
然后分别跟他作比较 for 循环{
if(){}
}
day05 调用方法
syso (Arrays.toString(arr))
返回值类型为 void 只能单独调
public static void test(){
System.out.println()
}
方法重载:同一个类中,有多个方法名相同,参数列表不同(参数个数不同、参数数据类型不同、参数顺序不同)的方法
day06 断点调试
breakpoint 断点
Debug 断点调试 : 就是一个标记
哪里不会加在哪里
在代码区域左边 双机即可
|
|