java
Since_I_was_32
这个作者很懒,什么都没留下…
展开
-
java Collections和Collection的区别
Collection和Collections的区别Collection:是单列集合的顶层接口,有子接口List和SetCollections:是针对集合操作的工具类,有对集合进行排序和二分查找的方法---------------常用方法---------------Collections.sort(arr); // 自然排序System.out.println(arr);//// Collections.reverse(arr);//翻转// System.out.println(arr)原创 2021-06-10 09:24:19 · 245 阅读 · 0 评论 -
java StringBuffer
StringBuffer:线程安全的可变字符串StringBuffer:长度内容可变,String长不内容不可变成员方法:添加功能:StringBuffer sb = new StringBuffer();sb.append(“abc”);sb.insert(1,“a”);删除方法:sb.delete(0,2); //索引范围sb.deleteCharAt(2); //指定索引替换方法sb.replace(0,1,“a”); // 把第一位换成a翻转功能sb.reverse()原创 2021-06-10 09:23:37 · 98 阅读 · 0 评论 -
java Map
Map集合的功能概述:添加V put(K key, V value) 将指定的值与此映射中的指定键相关联(可选操作)。删除void clear() 从此映射中删除所有映射(可选操作)。V remove(Object key) 如果存在,则从该映射中移除键的映射(可选操作)。判断boolean containsKey(Object key) 如果此映射包含指定键的映射,则返回 true 。boolean containsValue(Object value) 如果此映射将一个或多个键映原创 2021-06-10 09:22:56 · 112 阅读 · 0 评论 -
java TreeSet
TreeSet无序,唯一无参构造:需要在要添加的对象的类中 重写compareTo方法,实现Comparable接口有参构造:参数为实现Comparator接口的子类对象实现Comparator的子类MyComparator 重写compare方法,或直接传递 new Comparator(){} 匿名内部类HashSet判断是否唯一通过hashCode()方法和equals()方法,引用类型如果对比值需要重写这两个方法哈希表:是一个元素为链表的数组.综合了数组和链表的好处LinkedHash.原创 2021-06-10 09:22:24 · 230 阅读 · 0 评论 -
java List
List是Collection的子接口List集合的特点:有序(存储和去除的元素一致),可重复List集合的特有功能添加功能list.add(int index,Object element); // 在指定位置添加元素获取功能get(int index); // 获取指定索引位置的元素列表迭代器ListIterator listIterrator() List集合特有的迭代器删除功能Object remove(int index) 根据索引删除元素返回被删除的元素修改原创 2021-06-10 09:21:49 · 95 阅读 · 0 评论 -
java Collection
collection:是集合的顶层几口,他的子体系有重复的,有唯一的,有有序的,有无序的Collection的功能概述:1:添加boolean add(E e) :添加一个元素boolean addAll(Collection<? extends E> c) :添加一个集合的元素加2:删除void clear() 从此集合中删除所有元素(可选操作)。boolean remove(Object o) 从此集合中移除指定元素的单个实例(如果存在)(可选操作)。boolean r原创 2021-06-10 09:21:19 · 166 阅读 · 0 评论 -
java包装类
包装类类型基本类型 引用类型byte Byteshort Shortint Integerlong Longfloat Floatdouble Doublechar Characterboolean BooleanArrays数组的操作工具类int[] arr = {56,4,123,4,15,8564,3,1};Arrays.sort(arr); // 排序Arrays.toString(arr); // 数组转字符串Arrays.binarySearch(arr, 56)原创 2021-06-10 09:20:41 · 108 阅读 · 0 评论 -
java泛型
格式:<数据类型>此处的类型只能是引用类型好处:把运行时期的问题提前到了编译期间避免了强制类型转换又花了程序设计,结局了黄色警告线把泛型定义在类上public class Test{private T obj;public T getObj(){return obj}public void setObj(){this.obj = obj;}}把泛型定义在方法上public void show(T t){System.out.println(t);}泛型原创 2021-06-10 09:20:10 · 97 阅读 · 0 评论 -
泛型增强for遍历
package QtArrayList;import java.util.ArrayList;public class ArrayListTest {public static void main(String[] args) {Student s = new Student(“张柏芝”,18);Student s1 = new Student(“张柏芝”,19);Student s2 = new Student(“张柏芝”,20);Student s3 = new Student(“张柏芝”原创 2021-06-10 09:19:30 · 140 阅读 · 0 评论 -
java增强for
ArrayList list = new ArrayList();list.add(“java”);list.add(“se”);for(String s:list) {System.out.println(s);}可变参数(数据类型后面加"…")public int sum(int… a){for(int a:)}public static List asList(T… a):把数组转成集合List list = Arrays.asList(“abc”,“bcd”,“efg”);原创 2021-06-10 09:18:43 · 92 阅读 · 0 评论 -
java String类的常用方法
String s = “HelloWorld”;String s1 = “HelloWorld”;System.out.println(s.equals(s1)); // trueSystem.out.println(s.equalsIgnoreCase(“helloworld”));//不区分大小写equalsSystem.out.println(s.contentEquals(“HelloWorld”));System.out.println(s.indexOf(“H”));System.o原创 2021-05-31 23:41:18 · 361 阅读 · 0 评论 -
java 链式编程
链式编程对象.方法1().方法2()…方法n();在方法()1调用完毕后应该返回一个对象,在方法()2调用完毕后应该返回一个对象…方法n()调用完毕后可能是对象也可能不是对象原创 2021-05-28 21:48:06 · 105 阅读 · 0 评论 -
java 内部类
成员内部类private 修饰为了数据的安全性static 修饰为了访问的方便性成员内部类不是静态的:外部类名.内部类名 对象名 = new 外部类名().new 内部类名();成员内部类是静态的:外部类名.内部类名 对象名 = new 外部类名.内部类名();成员内部类不是静态class Outer{class Inner{public void show(){System.out.println(“TEst”);}}}class Cheng{public static原创 2021-05-28 21:47:35 · 147 阅读 · 0 评论 -
java 权限修饰符
权限修饰符本类 同一个包下(子类和无关类) 不同包下(子类) 不同包下(无关类) pvivate Y 默认 Y Y protected Y Y Ypublic Y Y Y Y修饰符权限修饰符 private, 默认, protected, public状态修饰符 static, final抽象修饰符 abstract...原创 2021-05-28 21:47:04 · 77 阅读 · 0 评论 -
java 包
包的定义package 包名;多级包用.分开package语句必须是程序的第一条可执行的代码package语句在一个java文件中只能有一个如果没有package,默认表示无包名带包的编译和运行编译:javac -d . xxx.java运行:java 路径.java代码顺序package>import>classpackage xxx.xxx;import xxx.xxx.xxx;class xxx{}...原创 2021-05-28 21:46:33 · 126 阅读 · 0 评论 -
java 接口
接口的特点接口用关键字interface表示interface 接口名 {}实现接口用用implements表示class 类名 implements 接口名 {}接口不能实例化需要按照多台的方式来实例化接口的子类可以是抽象类,但是意义不大可以使具体类,要重写接口中的所有抽象方法(推荐)具体类多态(几乎没有)抽象类多态(常用)接口多态(最常用)接口成员特点成员变量:只能是常量,并且是静态的默认修饰符 public static final建议:自己手动给出构造方法:接口没有原创 2021-05-26 20:50:01 · 103 阅读 · 0 评论 -
java 抽象类
抽象类的特点:抽象类和抽象方法必须用abstract关键字修饰一个类中如果有抽象的功能,该类必须是抽象类有抽象方法的类必须定义为抽象类抽象类中不一定有抽象方法抽象类不能实例化因为他不是具体的, 需要通过多态的方式来实例化 Animal a = new Dog();抽象类有构造方法,用于子类访问父类数据的初始化抽象类的子类如果不想重写抽象方法, 该子类是一个抽象类重写所有的抽象方法,这个时候子类是一个具体的类public abstract void eat(){} // 空方法体pu原创 2021-05-26 20:49:17 · 128 阅读 · 0 评论 -
java final
final 让子类无法重写final修饰的方法final 可以修饰:类: 最终类 无法被继承方法: 最终方法 无法被重写变量: final修饰变量, 该变量不能被重新赋值,因为这个变量是常量常量:字面值常量:“hello”,10,true自定义常量final int x = 10;final修饰局部变量的问题基本类型:基本类型的值不能发生改变引用类型:引用类型的地址值不能发生改变,但是,该对象的堆内存的值是可以改变的.例:class Student{int a = 10;}原创 2021-05-26 20:48:30 · 107 阅读 · 0 评论 -
java 多态
多态的前提:有继承关系有方法重写没有方法重写也是可以的,但是没有重写就没有意义动物 d = new 猫();d.show();动物 d = new 够();d.show();有父类应用指向子类对象父 f = new 子();多态中的成员访问特点:成员变量编译看左边,运行开右边构造方法创建子类对象的时候,访问父类的构造方法,对父类的数据进行初始化成员方法编译看左边,运行看右边静态方法编译看左边,运行看左边(静态和类相关,算不上重写,所以,访问还是左边的)由于成员方法存在原创 2021-05-26 20:47:57 · 87 阅读 · 0 评论 -
java 继承
格式:class Fu{}class Zi extends Fu{}java继承特点:只支持单继承,不支持多继承支持多层继承可以继承非私有成员变量和方法不能继承父类的私有方法不能继承父类的私有成员变量不能继承父类的构造方法,但是可以通过super关键字访问父类构造方法好处:提高了代码的复用性提高了代码的维护性让类与类之间产生了关系,是多态的前提类与类产生了关系,也是继承的一个弊端:类的耦合增强了开发的原则:低耦合,高内聚耦合:类与类的关系内聚:自己完成某件事的能力thi原创 2021-05-26 20:47:18 · 83 阅读 · 0 评论 -
java 代码块
代码块:在Java中使用{}括起来的代码被称为代码块局部代码块:局部位置,用于限定变量的生命周期构造代码块:在类中的成员位置{} 每次调用构造方法执行前,都会先执行构造代码块.作用:可以把多个构造方法中的共同代码放一起静态代码块:在类中成员位置{}的代码用static修饰,在加载类的时候只执行一次作用:一般是对类进行初始化.执行顺序静态代码块–构造代码块–构造方法静态代码块:只执行一次构造代码块:每次调用构造方法都执行class Code{//静态代码块static {int a原创 2021-05-26 20:46:40 · 65 阅读 · 0 评论 -
java 方法重写
方法重写的注意事项父类中私有方法不能被重写,因为父类私有方法子类根本就无法继承子类重写父类方法是,访问权限不能更低,最好一致 public父类静态方法,子类也必须通过静态方法重写(算不上重写) 父子其中一个静态一个非静态都不可以子类重写父类方法的时候,最好声明一模一样.Override:方法重写Overload:方法重载方法重写:子类中出现和父类中一模一样的方法声明的现象.方法重载:同一个类中,出现的方法铭相同,参数列表不同的现象. 方法重载能改变返回值类型...原创 2021-05-26 20:46:10 · 121 阅读 · 0 评论 -
java 使用说明(帮助文档)的制作
面向对象说明书的制作(帮助文档)/**这是针对数组进行操作的工具类*@author Fyl*@version v1.0*/@author Fyl 作者@version v1.0 版本@param arr 参数@return 返回值格式:javadoc -d 目录 -author -version ArrayTool.java制作帮助文档出错:找不到可以文档化的公共或受保护的类:告诉我们类的权限不够例:/**这是针对数组进行操作的工具类*@author F原创 2021-05-23 19:22:33 · 230 阅读 · 0 评论 -
java 标准类示例
class StudentDemo1{public static void main(String[] args){Student s = new Student(“林青霞”,27);s.show();Student s1 = new Student();s1.setName(“张曼玉”);s1.setAge(26);System.out.println(s1.getName()+s1.getAge());s1.show();}}class Student{private Strin原创 2021-05-23 19:21:53 · 97 阅读 · 0 评论 -
java static关键字
static 的特点:可以修饰成员变量和成员方法非静态方法可以访问静态方法和静态变量,反之不行.静态方法只能访问静态变量和静态方法,静态方法中没有this被类的所有对象共享静态变量可以通过类名调用,也可以通过对象名调用静态方法和变量随着类的加载而加载,比对象先存在静态修饰的内容一般我们称其为:类成员静态方法想访问非静态方法需要创建该类的实例对象,用实例对象就可以访问.static变量可以通过类名直接调用例:class StaticDemo{public static void main原创 2021-05-23 19:21:15 · 90 阅读 · 0 评论 -
java private关键字
private 的特点:private 初始化方法后外部不可以创建该类对象,只能通过类名调用静态方法.是一个权限修饰符,可以修饰成员变量和成员方法被private修饰的成员只能在本类中被访问也不能用对象赋值例:private 初始化方法class ArrayDemo{public static void main(String[] args){int[] arr = {1,2,3,4,5,6,7};//ArrayTool at = new ArrayTool(); // 构造方法私有原创 2021-05-23 19:20:52 · 200 阅读 · 0 评论 -
java 构造方法
构造方法:给对象的数据进行初始化格式:方法名与类名相同没有返回值类型,也没有void没有具体的返回值系统默认提供无参构造方法,如果定义了有参构造方法,需要自己定义无参构造方法,否则无参使用会报错class ConstructDemo{public static void main(String[] args){Student s = new Student(“林青霞”,27);s.sop();}}class Student{private String name;private原创 2021-05-23 19:20:09 · 82 阅读 · 0 评论 -
java 二维数组
二维数组定义:每一个元素为一维数组的数组…格式数据类型[][]变量名 = new 数据类型 [m][n];m表示这个二维数组有多少个一维数组n表示一维数组的元素个数例int[][] arr = new int[3][2]定义了一个二维数组arr这个二维数组有三个一维数组,名称是arr[0],arr[1],arr[2]每一个一维数组有2个元素,可以通过arr[m][n]来获取int[] x; //一维数组int[] y[]; //二维数组int[] x,y[];// 二维数组动原创 2021-05-21 22:49:38 · 79 阅读 · 0 评论 -
java 数组
数组的概念:数组只能存储同一种类型的元素(变量)或者引用数据类型数组的定格式格式1:数据类型[]数组名;格式2:数据类型 数组名[];数组的初始化动态初始化:数据类型[] 数组名 = new 数据类型[数组的长度]; // byte short int long默认为0 float double默认0.0 boolean默认false char默认"\u0000" string默认nullint[] a = new int[3]; // 定义了一个int类型的数组,这个数组中可以存放3个in原创 2021-05-21 22:49:07 · 81 阅读 · 0 评论 -
java 定义方法
方法与方法是平级关系,不能嵌套定义方法格式:修饰符 返回值类型 方法名(参数类型 参数名1, 参数类型 参数名2) {方法体语句;return 返回值;}---------------------------方法类型void 无返回值boolean 返回值为true|falseint 返回int方法重载概述:在同一个类中,允许存在一个以上的同名方法,只要他们的参数个数或者参数类型不同即可.方法重载的特点与返回值类型无关,值看方法名和参数列表在调用时,虚拟机通过参数列表的不同来原创 2021-05-21 22:48:36 · 80 阅读 · 0 评论 -
java while循环
while循环语句格式:基本格式:while(判断条件语句){循环体语句;}扩展格式:初始化语句;while(判断条件语句){循环体语句;控制条件语句;}示例:class WhileDemo{public static void main(String[] args){int i = 0;while (i <= 10){i++;System.out.println(i);}}}...原创 2021-05-21 22:47:51 · 80 阅读 · 0 评论 -
java do...while循环
do…while循环语句格式:基本格式do{循环体语句;}while(判断条件语句);扩展格式do{循环体语句;控制条件语句;}while(判断条件语句);原创 2021-05-21 22:47:16 · 77 阅读 · 0 评论 -
java switch语句
switch语句格式:switch(表达式) {case 值1:语句体1;break;case 值2:语句体2;break;…default:语句体n+1;break;}例:import java.util.Scanner;class SwitchDemo{public static void main(String[] args){Scanner sc = new Scanner(System.in);int x = sc.nextInt(); switch (x){原创 2021-05-20 21:44:06 · 177 阅读 · 0 评论 -
java for循环
for循环格式:for(初始化语句;判断条件语句;控制条件语句){}class ForDemo{public static void main(String[] args){for (int i = 1; i <= 10; i++){System.out.println(“HelloWorld!”);}}}原创 2021-05-20 21:43:18 · 58 阅读 · 0 评论 -
java if语句
int x = 10;if ( x == 10) {System.out.println(“true”);} else {System.out.println(“flase”);}原创 2021-05-20 21:42:46 · 83 阅读 · 0 评论 -
java键盘录入-扫描模块
键盘录入input的使用方法import java.util.Scanner;class ScannerDemo{public static void main{Scanner sc = new Scanner(System.in);System.out.println(“请输入数据”);int x = sc.nextInt();int y = sc.nextInt();System.out.println(“你输入的数据是”+x+y);}}...原创 2021-05-20 21:41:57 · 156 阅读 · 0 评论 -
ascii码表
原创 2021-05-19 21:59:07 · 85 阅读 · 0 评论 -
Java运算符
运算符+,-,,/(商),%(余数),++,–整数/整数结果只能为整数int a = 3;int b = 2;System.out.println(a/b);//输入结果为1System.out.println(a1.0/b);//输出结果为1.5######### ++,-- ###########++,-- 单独使用放前放后无区别参与运算使用 放前是先自增或自减再参与运算,放后是先参与运算再自增或自减int a = 3;int b = 4;int c = a++;原创 2021-05-19 21:56:32 · 241 阅读 · 0 评论 -
Java字符串连接符+
左边字符串+ 输出为 字符串链接昨天可以运算的数据类型+字符串 输出为运算结果+字符串原创 2021-05-19 21:52:47 · 80 阅读 · 0 评论 -
原码反码补码
原码:正数的原码最高位是0复数的原码最高位是1其他未是数值位符号位 数值为+7 0 0000111-7 1 0000111反码:正数的反码与其原码相同;负数的反码是对其原码逐位取反,但符号位不变符号位 数值位+7 0 0000111-7 1 1111000补码: 位运算^取反后 为补码正数的补码与原码相同.负数的补码是在反码的基础上加1.符号位 数值位+7 0 0000111-7 1 1111001...原创 2021-05-19 21:52:00 · 733 阅读 · 0 评论