Java的基础知识学习完结篇

Java的基础知识学习完结篇

(1)数组变量:直接初始化数组{},具有可扩展性。(new创建的数组默认0);数组变量为“管理者”,而非数组本身;赋值为管理权限的赋予;数组变量之间的比较是判断是否管理同一个数组。

Java的基础知识学习完结篇_第1张图片
编译器帮我数数组的大小,数组大小具有可扩展性
结果
Java的基础知识学习完结篇_第2张图片
“管理者”体现
运行结果
Java的基础知识学习完结篇_第3张图片
数组变量之间赋值
结果
比较两个数组变量
结果,a和b为两个不同的数组变量


Java的基础知识学习完结篇_第4张图片
a和b的关系图

(2)拷贝数组:先遍历数组,再进行拷贝。

Java的基础知识学习完结篇_第5张图片
拷贝数组
a和b依然不相等
Java的基础知识学习完结篇_第6张图片
遍历过程发现a[i]=b[i]
结果,有个前提条件是数组长度相等

(3)遍历数组:进行搜素,通常使用for循环,从0到数组的length减1(常见错误:长度、离开循环后依然使用循环变量作为数下标)。

Java的基础知识学习完结篇_第7张图片
程序设计
结果1
结果2

(4)改进(3),利用for-each循环进行遍历:for(<类型><变量>:<数组>{})。

Java的基础知识学习完结篇_第8张图片
for-each循环
不能更改数组,但是可以读出来

(5)素数:算法的设计,一是利用循环进行遍历,二是先去除偶数和2,从3开始,加2进行遍历,三是利用sqrt(),四是判断是否能被已知的且

Java的基础知识学习完结篇_第9张图片
算法四,构造前50个素数表


Java的基础知识学习完结篇_第10张图片
算法五,与人的思考方式很不同
构造100以内的素数表

(6)二维数组:如int[][] a=new int[][],理解为几行几列的数组,遍历数组需要两层循环。

创建二维数组

(7)tic-tac-toe 游戏设计:行、列、对角线、反对角线出现三个o或者x获胜。

Java的基础知识学习完结篇_第11张图片
二维数组
Java的基础知识学习完结篇_第12张图片
(1)


Java的基础知识学习完结篇_第13张图片
(2)
Java的基础知识学习完结篇_第14张图片
(3)
Java的基础知识学习完结篇_第15张图片
(4)

(8)字符类型:单个字符类型:char;字母和数字在Unicode中顺排;大写和小写分开排列;可以比较大小。

char:单个汉字、数字、字符
可作减法、类型转化、进制转化
结果
大小写字母转化
结果:A-->a
Java的基础知识学习完结篇_第16张图片
比较大小

(9)逃逸字符:控制字符、特殊字符,以\开头;\t自动对齐。

Java的基础知识学习完结篇_第17张图片
逃逸字符

(10)包裹类型:获得该类型的最大最小值,Integer.MAX_VALUE、Integer.MIN_VALUE。

Java的基础知识学习完结篇_第18张图片
包裹类型
Java的基础知识学习完结篇_第19张图片
Integer的利用
Java的基础知识学习完结篇_第20张图片
包裹类型的利用,作为工具十分好用

注意:用.运算符,让一个类或对象做事,a.length,Integer.MAX_VALUE

(11)字符串:字符串变量;String是一个类,其变量是对象的管理者而非所有者 ;用+连接字符串;输入字符串:in.next()读入一个单词,读到空格结束,空格包括空格、换行、回车;in.nextLine()读入一整行;判断字符串内容是否相同,用.equals(“”)。

Java的基础知识学习完结篇_第21张图片
具体操作

(12)String大小的比较:.compareTo IgnoreCase可以不区分大小写地来比较大小。

Java的基础知识学习完结篇_第22张图片
比较大小

(13)获得String的长度:用length()函数。

(14)访问String里的字符:s.charAt(index),长度从0到length减1,不能用for-ecah循环遍历。

Java的基础知识学习完结篇_第23张图片
循环遍历字符串

(15)得到子串:s.substring(n),从n号到末尾的全部内容;s.substring(b,e)从b号位置到e号位置之前的内容。

Java的基础知识学习完结篇_第24张图片
注意(2,4)输出为处于2、3位置的字符,不包括4位置的

(16)寻找字符:s.indexOf(c),找到c字符所在的位置,-1表示不存在;s.indexOf(c,n),从n号位置开始遵照c字符;s.indexOf(t),找到字符串t所在的位置;s.LastIndexOf(c),从右边开始寻找。

Java的基础知识学习完结篇_第25张图片
寻找字符
小套路,设置变量找到相同的字符所在的位置

(17)其他String操作:s.startsWith(t); s.endWith(t)(字符串以某个字符开始或者结尾); s.trim()(把字符串的两端的空格给删掉); s.replace(c1,c2)(交换字符串); s.toLowerCase()(将字符串都换成小写);  s.toUpperCase()(将字符串都换成大写)。

注意:所有的字符串都是不可变的,对它们的操作的结果都是制造新的字符串出来

Java的基础知识学习完结篇_第26张图片
注意示意

(18)switch-case中使用字符串:switch(s){case"this":......break;case"that':.....break;}

(19)MATH类:abs(绝对值)、pow(幂次)、random(随机数)、round(四舍五入)。

Java的基础知识学习完结篇_第27张图片
math类示例

(20)定义函数:.(为对象的操作),可以避免“代码复制”,程序质量不良的表现。函数是一块代码,接受0个或多个参数,做一件事情可以返回0个或一个值。

Java的基础知识学习完结篇_第28张图片
代码复制现象
Java的基础知识学习完结篇_第29张图片
定义函数

(21)调用函数:函数名(参数值),没有参数()也需要;return停止函数的执行,并返回一个值,return;return 表达式(注意定义时函数类型的设置)。void不能使用带值return。

定义函数f()函数
调用f()函数,调试时step into,step return的使用

注意:函数总是知道自己从哪里开始,并返回,注意类型匹配问题,计算机会自动转换,char-->int-->double,还可以手动强制转换;在调用函数数,永远只能传值给函数。

Java的基础知识学习完结篇_第30张图片
return 一个返回值的示例
Java的基础知识学习完结篇_第31张图片
函数的传值

(22)本地变量:(函数的递归调用)定义在函数内的变量、参数都是本地变量;变量有生存期和作用域,本地变量的生存期和作用域在{}内--块。

本地变量的规则:可以定义在函数的块内;可以定义在语句的块内;随便用一对{}来定义变量;当程序运行进入这个块之前,其中的变量不存在,离开这个块其中的变量就消失了;不能在一个块内定义同名变量,也不能定义块外面定义过的变量;块外面定义的变量在块内依然有效;参数在进入函数的时候就被初始化了。

你可能感兴趣的:(Java的基础知识学习完结篇)