Java中有些小数的加法运算得出的答案与实际不符,是因为十进制转为二进制时,小数部分是乘二取整(整数部分),可能会无限不循环,因此Java中会有些包来帮助我们完成
Java语言循环嵌套
如果需要从多层循环跳出,则需要使用标签,定义一个标签,然后在需要跳出的地方,用break + 标签名即可
Java中的方法
习惯在面向过程的语言中把有名字的代码块称为函数,在面向对象的语言中称为方法
Java中的方法相当于C语言中的函数
将某个重复使用的一段代码定义到一个有名字的代码块中
通过名字可以多次调用代码块
函数、方法——>某种功能
main方法(函数)是Java程序入口,启动方法
自定义方法(函数),必须定义在一个类中
方法定义的语法:
[访问权限修饰符 修饰符] [返回值类型/int/void]
*访问权限修饰符有例如public private,控制方法在哪些地方可以被调用,如果被调用的方法不在当前类中,则需在方法前+“其所在类的名称+ . ”
return
有两种格式:
return 值;//将值返回,方法必须声明有返回值
return;//不返回任何值,表示终止方法执行,可以在声明为void的方法中使用
Java数组
概念
数组是一组相同数据类型元素的集合,是一个容器
数组本身是引用数据类型,是一个对象
数组可以存储基本数据类型,也可存储引用数据类型(例如,字符串)
数组创建时必须指定长度,且创建后长度不可变
数组中每个元素是连续的
声明
声明方式(两种):
1.数据类型 [ ] 变量名 //建议用这种方式
2.数据类型 变量名 [ ]
创建
创建数组,指定长度(容量)
eg. int [ ] a = new int [ 5]
eg. int [ ] a = new int [ ]{1,2,3,4,5}
eg. int [ ] a = {1,2,3,4,5}
访问
数组下标/索引
索引特点:
数组索引类型时整数(int)
数组索引从0开始
最大值是(数组长度-1)
获得数组长度:
System.out.println(数组名.length);
最大索引:
System.out.println(数组名.length-1);
元素遍历
for循环
eg.
int[] a = new int[5]; for(int i=0;i<a.length;i++){ System.out.println(a[i]); }
增强for循环
for(元素类型 临时变量:遍历的数组){临时变量}
eg.
for(int t:a){ System.out.println(t); }
冒泡排序
每次取出相邻的两个元素进行比较,把较大的往后移
int[] a = {3,4,9,64,6,4}; //比较的趟数 for(int i=0;i<a.length-1;i++){ //每趟比较的过程 for(int j=0;j<a.length-1-i;j++){ if(a[i]>a[j+1]){ int temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; } } } System.out.println(Arrays.toString[a]);
选择排序
假设第一个元素就是最大/最小值,用第一个位置上的元素与后面每一个位置上的元素进行比较,满足条件,交换位置
package day3; import java.util.Arrays; public class Sort2 { public static void main(String[] args) { //选择排序 int[] a = {2,4,3,1,2,3,0,7}; for(int i = 0 ; i < (a.length-1) ; i++){ for(int j = i + 1 ; j < a.length ; j++){ if(a[i]>a[j]){ int temp = a[i]; a[i] = a[j]; a[j] = temp; } } } System.out.println(Arrays.toString(a)); } }
debug调试
1.设置断点,开始调试的位置
2.debuag模式启动
3.逐步调试
4.取消断点
5.释放程序