北大X鸟|第一本书总结

第一章 初识Java

易错:

  1. public class 类名称 与 文件名称.java 必须相同
  2. void 不可少(这是无返回值的意思后面会讲)
  3. Java 对英文字母 大小写 敏感
  4. ; 注意英文的分号
  5. “ 注意英文的引号
  6. \t 为一个tab键
  7. \n 为换行

第二章 变量和数据类型

数据类型 含义
int 整型
double 双精度浮点型
加粗样式 字符型
String 字符串型
boolean 布尔类型

变量声明

语法:

变量类型 变量名 ;
int time ;

##变量赋值
语法:

变量名 = 值;
time = 33;

声明并赋值

语法:

数据类型 变量名 = 值;
char sex = ‘女’;

扫描仪的使用
在这里插入图片描述

数据类型转换

  1. 自动数据类型转换 “放大转换”
    条件:a.类型兼容 b.小转大
    int score = 80;
    double newScore = score;

  2. 强制数据类型转换”缩小转换”
    double score = 123.23;
    int newScore – (int)score;

关系运算符

> 小于
>= 小于等于
== 等于
<= 大于等于
!= 不等于

算术运算符

+
-
*
/ 取商
% 取余
a++ 先运算后自加
a- - 先运算后自减
++a 先自加后运算
- -a 先自减后运算

赋值运算符

下面是Java语言支持的赋值运算符:

操作符 描述 例子
= 简单的赋值运算符,将右操作数的值赋给左侧操作数 C = A + B将把A + B得到的值赋给C
+ = 加和赋值操作符,它把左操作数和右操作数相加赋值给左操作数 C + = A等价于C = C + A
- = 减和赋值操作符,它把左操作数和右操作数相减赋值给左操作数 C - = A等价于C = C - A
* = 乘和赋值操作符,它把左操作数和右操作数相乘赋值给左操作数 C * = A等价于C = C * A
/ = 除和赋值操作符,它把左操作数和右操作数相除赋值给左操作数 C / = A等价于C = C / A
(%)= 取模和赋值操作符,它把左操作数和右操作数取模后赋值给左操作数 C%= A等价于C = C%A

逻辑运算符

&&
||
!

短路逻辑运算符

当使用与逻辑运算符时,在两个操作数都为true时,结果才为true,但是当得到第一个操作为false时,其结果就必定是false,这时候就不会再判断第二个操作了。

条件运算符(?:)

条件运算符也被称为三元运算符。该运算符有3个操作数,并且需要判断布尔表达式的值。该运算符的主要是决定哪个值应该赋值给变量。
语法:

变量x = (表达式) ? 值若为真 : 值若为假;
int a , b;
a = 10;
// 如果 a 等于 1 成立,则设置 b 为 20,否则为 30
b = (a == 1) ? 20 : 30;
System.out.println( "Value of b is : " + b );
//因为a=10,不为1,所以是false,b=30

优先级:算术>关系.>逻辑

第四章 选择结构

if选择结构

在这里插入图片描述

扫描二维码关注公众号,回复: 5614791 查看本文章

ifelse选择结构

在这里插入图片描述

elseif多重选择

在这里插入图片描述

嵌套if选择

在这里插入图片描述

switch选择结构

在这里插入图片描述在这里插入图片描述

[0,10 )的随机数

在这里插入图片描述

小结:if处理范围 switch处理定值


处理系统异常

如何让其输入数字hasNextInt判断判断是否输入为数字
在这里插入图片描述

第五章 循环结构

while循环

在这里插入图片描述

do-while循环

在这里插入图片描述

for循环

在这里插入图片描述

程序调试

  1. 分析错误,设置断点
  2. 启动调试,单步执行 点虫子
  3. 观察变量
  4. 消灭虫子
    F5单步跳入 会进入本行代码内部执行
    F6单步跳过 就执行你看见的本行代码,执行完跳到下一行

break 跳出循环体
continue跳出当前循环,进行下一次循环
return 跳出当前方法 返回一个值

第八章 数组

灵魂画手

  1. 标识符
  2. 数组元素
  3. 数组下标
  4. 元素类型

如何使用数组

声明数组

语法:

数据类型[] 数组名;
int[] scores;

分配空间

语法:

数组名 = new 数据类型[数组长度];
scores = new int[30];

声明并分配空间

语法:

数据类型[] 数组名 = new 数据类型[数组长度];
int[] scores = new int[30];

赋值

语法:

数组名[下标值] = XXX;
scores[12] = 98;

声明分配空间并且赋值

语法

数据类型[] 数组名 = {值1,值2,值3};
int scores[] =
也等价于
int scores[] = new int[] {213,43,542,13};
注意int[这里为空]

数组元素初始值

char ‘\u0000’
boolean false

数组排序

语法

Arrays.sort(数组名);

排列出来后是升序

比较字符串大小

语法:

这个是无视了大小写的
String1.compareToIgnoreCase(String2);
如果1>2就返回1
等于返回0
小于为-1

第九章 二重循环

解释解释的话,就是循环里套循环
在这里插入图片描述
当然也可以for里套while

二重循环里的break和while
都是跳出本层循环

第十一章 类和对象

面向对象

Java是一种面向对象的编程语言(Object Oriented Programming Language,OOPL)

身边的对象

对象 静态特征 静态特征的值 动态特征
顾客对象: 姓名 小明 购买商品
收银员对象: 员工号 10012 收款

对象的属性和方法

在面向对象的编程思想中,把对象多的 静态特征 和 动态特征
分别称为对象的对象的 属性方法
对象:用来描述客观事物的一个实体,由一组属性方法构成。

封装

就是把一个事物包装起来,并尽可能隐藏内部细节
对象具有封装性

类定义了对象会具有的属性(特征)方法(行为)

= 抽象概念
对象 = 实体

Java类的模板

在这里插入图片描述

  • 不能使用Java中的关键字
  • 不能包含任何嵌入的空格或“.”,以及除下划线“_”,字符“$”外的特殊符号
  •  不能以数字开头
    记忆法: 想赚钱下载apptry$_123

定义方法

访问修饰符 返回值类型 方法名(){
//方法体

方法或变量名 先小后大
全大

如何创建和使用对象

创建

语法

类名 对象名 = new 类名();
School sch = new School();

赋值

语法

对象名.属性 = xxx;
对象名.方法名();
sch.name = “孤独自学”;
sch.Dream();

面向对象的优点

  1. 与人类思维一致
  2. 信息隐藏,提高了程序的可维护性和安全性
  3. 提高了程序的可重用性

第十二章 类的无参方法

什么是类的方法

如何定义类的方法

在这里插入图片描述
语法:
public 返回值类型 方法名(){
//方法的主体
}

方法名字先小后大
类名全大

方法执行后返回一个结果,结果的类型称为称为返回值类型,使用return语句返回

语法:
return 表达式;

方法的调用

语法:

对象名.方法名();
AutoLion		lion	=	new	AutoLion();
Lion.run();
  • 同一类中的方法,直接使用方法名调用该方法。
  • 不同类的方法,先创建对象,再使用对象名.方法名()来调用

易错

  • 返回值为void,方法不能有return
  • return不能返回多个值(除非数组或对象什么的)
  • 多个方法不能嵌套
  • 不能在方法外部直接写 逻辑代码

变量的作用域

成员变量和局部变量

成员变量:在类中定义的变量称为类的成员变量

  1. 在类本身里可直接使用,其他类的方法要访问,在访问权限允许的情况下,必须先创建对象,然后通过”.”来引用,
  2. Java会给其赋默认值

局部变量:在方法中定义的变量称为局部变量

  1. 只能在本方法内使用
  2. Java不会给其赋默认值
  3. 同一个方法内不能有同名局部变量,不同方法里可以有

PS:局部变量可以和成员变量同名,并且在使用时,局部比成员具有更高的优先级
小声哔哔:除非你用this语句,可以选择调用同名的成员和局部变量

JavaDoc注释

/**
*@xxx
*/
File—export—导出—Java—JavaDoc

第十四章 带参数的方法

定义带参的方法

语法:
<访问修饰符> 返回值类型 <方法名> (<(参数列表)>){
//方法的主体

public void addName(String name){
//增加学生的姓名

调用带参方法

语法:
对象名.方法名(参数1,参数2……参数n)
 要先实例化对象,再调用
 实参的类型,数量,顺序要与形参一一对应
在这里插入图片描述

常见错误

  1.  在传递的实参前添加数据类型如show.sayHello(String name,int time)
  2.  实参形参数据类型不一致
  3.  实参形参数量不一致
  4.  有返回值但调用该方法后没有对返回值做任何处理

数组作为参数的方法

在这里插入图片描述

对象作为参数的方法

在这里插入图片描述

对象数组

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

用来分类管理

声明包

语法

package 包名
package cn.gdzx.learning;

导入包

语法

import 包名.类名;
import 包名.*;

第十五章 字符串

String
str.length() 返回长度
str1.equals.str2 判断值相等
str.equalsIgnoreCase(str2) 不区分大小写
str1.compareToIgnoreCase(str2) 无视大小写 比较字符串顺序 1比2大返回1 等于为0 小于为-1
str.toUpperCase() 转大写
str.toLowerCase() 转小写
str1.contact(str2) 连接字符串 等同于 + => str1+str2
str.indexOf(“1”) 从前往后开始查找 字符 如果找到返回下标 未找到返回-1 PS:只返回第一次出现的下标
str.lastIndexOf(“1”) 从后往前开始查找 字符 如果找到返回下表 未找到返回-1 PS:只返回第一次出现的下标
str.subString(0,5) 截取字符串从下标0开始到5结束 ps:不包括下标5
str.trim() 去除字符串前后空格
str.split(String类型 “分离的标志”,int类型 返回的个数) 根据引号里的参数 拆分字符串,返回字符串数组有几个元素
StringBuffer
toString() 转成String类型
append("") 追加
insert(0,“xx”) 将字符串插入到指定位置

总结不容易,青鸟出来的学长学姐们望关照

猜你喜欢

转载自blog.csdn.net/qq_36005409/article/details/87922399