- 博客(32)
- 资源 (1)
- 收藏
- 关注
原创 集合
集合数组是定长的 长度一旦确定不能更改 集合是不限长的数组中数组元素类型是一致的 集合中不限制类型可以放任意数据类型(集合中不能有基本数据类型 只能放对象)集合中提供了较多的数据结构 使用效率相对较高1.Collection 接口特点是元素是 单列,只能存放单值提供的方法有:isEmpty();集合有无元素 add(); 添加集合元素 addAll();添加另一个集合的所有元素 size();集合大小 contains();是否包含某个对象
2021-03-28 20:35:55
279
原创 Math
public static void main(String[] args) { double pi = Math.PI; System.out.println(pi); double pow = Math.pow(3, 4); double sqrt = Math.sqrt(16); int abs = Math.abs(-12); // 0-1 0=<x<1 随机值 double
2021-03-28 18:04:27
125
原创 ^ | &和进制位移的运算
^|&的运算方式:&: 运算规则:0&0=0; 0&1=0; 1&0=0; 1&1=1; 即:两位同时为“1”,结果才为“1”,否则为0|: 运算规则:0|0=0; 0|1=1; 1|0=1; 1|1=1; 即 :参加运算的两个对象只要有一个为1,其值为1。^: 运算规则:0^0=0; 0^1=1; 1^0=1; 1^1=0;即:参加运算的两个对象,如果两个相应位为“异”(值不同),则该位结果为1,
2021-03-28 18:02:31
130
原创 正则表达式
正则表达式 regex常用来 校验用户的输入 是否合法(和提前定义的模式是否匹配)1,匹配子表达式出现的次数? * + {n} {n,} {n,m}public static void main(String[] args) { String str = "javaaaaaaa"; // * 前面的子表达式 出现0或者多次 boolean flag1 = str.matches("java*"); //+ 至少出现一次
2021-03-28 17:59:39
67
原创 常用类---String
常用类-String类1.1. String类不可变String是一个字符串类,是不可变的字符串一旦改动字符串内容 就是生成新的对象底层存储使用的是字符数组,使用final修饰 因此不可更改1.2.常用的方法1,构造方法 public static void main(String[] args) { String s1 = new String();// "" String s2 = new String("java");// "java"
2021-03-28 17:58:21
109
原创 引用类型面试题01
java中四种引用类型从JDK1.2开始,Java中的引用类型分为四种,分别是:①强引用(StrongReference)②软引用(SoftRefernce)③弱引用(WeakReference)④虚引用(PhantomReference)Reference,引用表示存放的是另外一块内存的起始地址,引用指向某个对象不同的引用类型对对象生命周期有影响,GC回收不一致1,强引用(有用并且必需的) 当内存空间不足时,JVM宁可报错(OOM OutOfMemoryError内存溢出)也不会回收此
2021-03-28 17:56:47
167
原创 常用类---Object
常用类—Object(Objects)1. toString()返回对象的字符串表示 类的全路径+”@“+对象hash值子类中可以进行重写 public String toString() { return getClass().getName() + "@" + Integer.toHexString(hashCode()); }2. equals()- 自反性 x.equals(x) 结果为true- 对称性 x.equals(y) 结果与y.equals(
2021-03-28 17:55:08
175
原创 异常面试题01
常见的异常有哪些(5个)? 空指针异常,算数异常 数组越界异常 类型转换异常 IO 影响程序正常运行的事件分为 错误(Error)和异常(Exception)
2021-03-28 17:37:20
76
原创 局部变量和成员变量
局部变量和成员变量局部变量1. 定义在方法内部(定义位置)2. 只有方法当中才可以使用,出了方法就不能使用(作用范围)3. 没有默认值,如果想要,必须手动赋值(默认值)4. 位于栈内存(内存位置)5. 随着方法进栈而诞生,随着方法出栈而消失(生命周期)成员变量1. 定义在方法外部,直接写在内当中2. 整个类都可以使用3. 如果没有赋值,会默认赋值,规则和数组一样4. 位于对内存5. 随着对象创建而诞生,随着对象被垃圾回收机制回收而消失...
2021-03-14 20:52:19
69
原创 冒泡排序
冒泡排序 工作原理: 第一次排序:从数组中依次取出相邻两个元素,进行比较,小的元素被被放在大的元素前面,然后小的元素不在参排序。 第二次排序:再从刚比较过的大的元素开始,依次向后取出相邻的两个元素进行比较,,小的元素被被放在大的元素前面, 然后小的元素不在参排序。 ..... 一次类推,直到排序完成。动图链接:https://www.runoob.com/w3cnote/bubble-sort.html代码演示: public static void main(Stri
2021-03-14 11:05:42
146
原创 选择排序
选择排序工作原理: 第一次循环:默认第一位为最小值,然后循环除第一位剩下的所有元素,找到其中最小的元素,将第一位的元素与其进行调换, 完成一次排序,即第一位此时是最小值,并不在参与以后的循环。 第二次循环:默认第二位是最小值,然后循环除第二位剩下的所有元素,找到其中最小的元素,将第二位的元素与其进行调换, 完成第二次排序,即第二位是比第一位大,比剩下的都小,也不再参与剩下的排序。 ...... 以此类推,直到排序完成。动图演示网站:https://www.runoob.com/w3
2021-03-14 10:51:31
125
原创 随机数
随机数使用 Math.random(); 方法 范围(0.0 <= Math.random() < 1.0)假如是随机生成一个4位数? int num = Math.random()*10000;你觉得是那种方式对吗?很明显不对,先说结果:int num = Math.random()*9000+1000; 因为Math.random();的范围是0-1,包括0 ,不包括1;所以 Math.random()*10000; 有几率生成0以及0.0000?所以,即使*100
2021-03-13 17:16:11
711
1
原创 打印乘法口诀表
//输出乘法口诀表 //行数 for (int i = 1; i <= 9; i++) { //每行 for (int j = 1; j <= i; j++){ System.out.print(i+"*"+j+"="+(i*j)+" "); } System.out.println(); }...
2021-03-13 14:03:58
320
原创 打印三角形、菱形
/* 打印此物 行数 空格数 星数 * 1 3 1 *** 2 2 3 ***** 3 1 5 ******* 4 0 7 line line-i 2*i-1 line是总行数 i当前行数
2021-03-13 14:01:47
149
原创 动态录入班级数,以及每个班级学生的人数,以及每个学生的成绩
动态录入班级数,以及每个班级学生的人数,以及每个学生的成绩//二维数组 // 动态录入班级数,以及每个班级学生的人数,以及每个学生的成绩 // 遍历输出每个班级每个学生的成绩 Scanner sc = new Scanner(System.in); System.out.println("请输入班级个数:"); int classCount = sc.nextInt(); //班级个数 int[][]
2021-03-13 13:56:22
740
原创 获取数组中的最大值,最小值
获取数组中的最大值,最小值使用索引的方式获取/** * 求最大值 最小值 */ public static void arrDemo4() { // 0-7 int[] sort = {66, 9, 12, 54, 3, 1, 0, 99}; //假设最大值所在的索引是0 int maxIndex = 0; int minIndex = 0; for (int i = 1; i &
2021-03-13 09:38:16
150
1
原创 删除数组中的某个元素
删除一个是元素,不是直接删除,而是通过将目标元素后面的所有元素都向前面移动一位,将目标元素覆盖掉,删除下标为5的元素:即元素6 目标数组:{1,2,3,4,5,6,7,8,9} 删除后:{1,2,3,4,5,7,8,9,0}最后一位置为默认值0 /** * 删除某个数组元素 */ public static void arrDemo8() { // 0-5 int[] scores = {66, 99, 45, 66, 10, 100}
2021-03-13 09:33:22
17526
原创 数组
数组1.一组有着相同的数据类型的数的集合(容器) 特性:1.是引用类型 2.长度有限 3.数组是一块连续的内存空间,读取速度快 4.数组元素的类型可以使任意类型。 5.数组的索引是从0开始 声明数组方式: int[] array; //一个以array的数组 int array[]; //两种等价,下一种不推荐使用 //定义一个长度为6的数组。 int[] array = new int[6]; //在定义的时候直接赋值,有几个值,长
2021-03-12 23:45:21
97
原创 java.util.Scanner
java.util.Scanner方法:.next() 适用于从控制台获取String类型的数据 .nextInt() 适用于从控制台获取int类型的数据使用方法:
2021-03-12 09:36:37
167
原创 java分支和循环
java分支和循环(判断条件为true才会执行循环体)分支***if语句*** 1. if(条件语句) 执行的语句; 2. if(条件语句){ 执行的语句; }else{ 执行的语句; } 3. if(条件语句1){ 执行的语句; }else if(条件语句2){ 执行的语句; } ***switch语句*** 每个case后面都要加break; 1. 无default () seitch(表达式){ ca
2021-03-12 09:31:15
198
原创 java从控制台中输入整形数据方式
java从控制台中输入整形数据方式主要使用的是 java.util.Scanner 类输入多个数值时,按空格在输入下一个数字,按回车键结束 Scanner sc = new Scanner(System.in); System.out.println("请输入一个正整数:"); int a = sc.nextInt();以下为转载 Princess_Ann 的 java.util.Scanner 通过new Scanner(Sysem.in)创建一个Scanne
2021-03-10 21:41:41
2909
原创 java的数据类型
java的数据类型基本数据类型:四类八中1.1、整数类型(所占字节):byte(1)、int(4)、short(2)、long(8)、1.2、小数类型(所占字节):float(4)、double(8)、1.3、单字符:char (占内存大小与编码格式有关)1.4、布尔类型:boolean(1)引用数据类型:class、interface、数组、枚举类、String。变量全局变量:[访问权限修饰符] [普通修饰符] 数据类型 变量名称 = 数据局部变量:[普通修饰符] 数据类
2021-03-10 21:08:25
97
原创 运算符
运算符赋值运算符=, +=, -=, *=, /=, %=算术运算符+, -, *, /,%:取余++:自增++:自减+:字符串的拼接比较运算符>, !=, <, >= ,<===:比较2个变量是否一致,比较的都是内存地址值public static void main(String[] args) { //比较运算符 //相同类型的变量 或者 相似类型的变量 才能比较 int num = 97;
2021-03-10 21:08:03
93
原创 java语言特征及jvm简单原理
java语言特征语言相对简单面向对象(有封装、多态、继承特性)健壮性3.1 GC机制:自动回收无用对象。3.2 异常机制:一段程序出问题其他部分正常运行。分布式(通过java.net.*调用其他项目接口)多线程跨平台性动态性(java语言不是一门动态的语言。 在程序运行期间 可以动态的更改类结构。 C反射的机制。)JDK、JVM、JREjdk:(java development kit) java开发工具包,要写java就离不开jdkjvm:(java virt
2021-03-10 21:07:26
74
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人