java学习笔记
云天明的package
我本是卧龙岗上散淡的人。
展开
-
选择排序
实现原理遍历数组元素找到一个最小(或最大)的元素,把它放在第一个位置,然后再在剩余未排序元素中找到最小(或最大)的元素,把它放在第二个位置,依次下去,完成排序。public class select{ public static void main(String[] args){ } public static void selectSort(int[] a){ for(int...原创 2019-11-17 22:27:32 · 70 阅读 · 0 评论 -
二分查找
二分查找实现思想在有序序列中,每次以序列的中间位置数来与待查找数进行比较,每次缩小一半的查找范围,直到匹配成功。**二分查找的 优缺点**: 优点:查找速度快,次数少。 缺点:有限制,必须是有序的序列,而且在其中增添,删减较为麻烦。public class test{ //二分查找的方法,两个参数,在数组a 里面查找元素y public static int binarySearc...原创 2019-11-17 19:43:27 · 84 阅读 · 0 评论 -
java生产者消费者模式
Food食物,生产一个消费一个。消费了再生产,生产了继续消费。public class Food { String name;//菜名 int price;//菜品价格 boolean hasfood;//默认就是false public Food() } public Food(String name, int price) { super(); this.name = ...原创 2019-11-09 22:51:24 · 90 阅读 · 0 评论 -
设计模式之——装饰模式
装饰模式:动态的给对象增加功能,要求装饰者对象和被装饰者对象有相同的抽象父类或者接口。装饰者和被装饰者有着相同的超类型可以使用多个装饰者来装饰一个对象对象可以在任何时候被装饰。该模式会用到继承,目的是为了让装饰者和被装饰者有相同的父类类型。class Coffee{ public String drink(){ return "coffee"; }}class Milk...原创 2019-11-08 00:02:23 · 86 阅读 · 0 评论 -
汉诺塔游戏(Tower of Hanoi)
public class Hanio{ public static void hanoi(int n,String start,String mid,String end){ if(n==1){ System.out.println(start+"--->"+end); } else{ hanoi(n-1,start,end,mid); System.out....原创 2019-11-06 00:47:07 · 178 阅读 · 0 评论 -
File:文件和目录的抽象类型
构造方法public File(String pathname) 参数,路径名,字符串形式。public File(String parent,String child) 参数,上级目录,下级目录。public File(File parent,String child)创建功能public boolean createNewFile() 创建新文件。public bo...原创 2019-11-06 00:24:00 · 153 阅读 · 0 评论 -
异常
Java异常体系结构。error,Exception:异常RuntimeException()以及其子类,非受查异常(运行时异常)。非RuntimeException()以及其子类,受查异常,编译时异常。JVM的默认处理方案。把异常名称,错误原因以及出现异常的位值等信息输出在控制台。程序停止运行。异常处理:try——catch——finallytry{//可能发生异常的代码...原创 2019-11-04 21:56:17 · 102 阅读 · 0 评论 -
求两个数的最大公约数
求两个数的最大公约数辗转相除法:假如有36和24两个数。设置三个变量,a(除数),b(被除数),r(余数);r=a/b,a=b,b=r;b为零时停止循环,a为最大公约数。public class Test{ public static void main(String[] args){ int a =36; int b =24; int r; do{ r=a%...原创 2019-11-02 00:31:22 · 166 阅读 · 0 评论 -
使用ArrayList获取10个1-20之间的随机数,要求不能重复
使用ArrayList获取10个1-20之间的随机数,要求不能重复思路:new集合new随机数判断是否重复一直到取到10个不同随机数为止。public class Demo{ public static void main(String[] args){ ArrayList<Integer> list =new ArrayList<Integer>(...原创 2019-11-02 00:20:26 · 764 阅读 · 0 评论 -
去除集合中字符串的重复值(字符串的内容相同)
去除集合中字符串的重复值有两种方法,先看第一种。思路:new一个新集合。遍历第一个集合,获取得到每一个元素。用第一个集合取出的元素去新集合里面看,如果有就不管,没有就加入新集合。遍历新集合。import java.util.ArrayList;public class Test{ public static void main(String[] args){ List&l...原创 2019-11-02 00:09:32 · 1548 阅读 · 0 评论 -
java常用API
object类public String toString();输出对象,默认使用该方法默认输出:获取当前对象所属的类型@hashcode的十六进制编码public boolean equals(Object obj);默认实现== ,== 比较地址public int hashCode();和地址相关,按照hash散列算法计算出的一个整数值两个对象hashcode不相同...原创 2019-10-31 21:52:04 · 267 阅读 · 0 评论 -
JavaAPI 练习
算出截止到现在,你已经出生了多少天。*实现步骤获取出生年月日。获取当前时间现在的时间减去出生的时间。import java.util.Scanner;public class Test{ public static void main(String[] args){ Scanner sc =new Scanner(System.in); System.out.printl...原创 2019-10-31 21:15:54 · 400 阅读 · 0 评论 -
统计大字符串中,包含多少个小字符串。
统计大串中小串出现的次数举例:在字符串”woaijavawozhenaijavawozhendeaijavawozhendehenaijavaxinbuxinwoaijavajajaaa”中java出现了5次。原创 2019-10-30 20:29:37 · 328 阅读 · 1 评论 -
输入一段字符串,记录当中有多少数字,大写字母,小写字母
输入一段字符串,记录当中分别有多少数字、大写字母、小写字母步骤记录读入的字符串创建计数变量三个判断是否为数字、大写字母、小写字母,是则计数变量加一。输出计数。import java.util.Scanner;public class Demo{ public static void main(String[] args){ Scanner sc =new Scanner(S...原创 2019-10-30 20:03:59 · 1056 阅读 · 0 评论 -
单例设计模式的几种简单写法。
public class Singleton{ private static Singleton singleton=null; //将自己封装起来 private Singleton(){}; //构造器私有,提供一个可以供外部访问的接口。 public static Singleton forInstance(){ if(singleton==null){ singleto...原创 2019-10-29 00:09:54 · 111 阅读 · 0 评论 -
static,this,private关键字。
static静态变量(类变量)与实例变量(非静态变量)的区别用static修饰的成员变量叫做类变量(静态变量),不用static修饰的叫做实例变量。用static修饰的方法叫做类 方法(静态方法),其余的叫做实例方法(非静态)。实例方法在一个类中可以互相直接调用,实例方法可以调用该类的实例方法和类方法,类方法只能直接调用该类的类方法,如果非要调用实例方法则需要使用new关键字,分配内存空...原创 2019-10-28 00:07:48 · 136 阅读 · 0 评论 -
java中 子类会继承父类的私有成员变量
在学习面向对象的三大特征——继承中,有一个问题困扰着我:子类是否会继承父类的私有成员变量呢。 答案是肯定的,子类会继承父类的私有成员变量。父类public class Animal { private int age; public Animal() { super(); } public int getAge() { return age; } public voi...原创 2019-10-27 17:19:51 · 1974 阅读 · 2 评论 -
使用二维数组打印杨辉三角
让用户从键盘中录入一个数,表示需要打印的杨辉三角的行数。先分析一下杨辉三角。1 0 0 0 0 0 01 1 0 0 0 0 01 2 1 0 0 0 0 1 3 3 1 0 0 01 4 6 4 1 0 01 5 10 10 5 1 01 6 15 20 15 6 1从中可以得到规律,从头到尾,第一列...原创 2019-10-26 23:32:25 · 1450 阅读 · 0 评论 -
面向对象——多态
多态: 简单描述: (通过一个父类调用)同一方法不同实现。 同一引用类型,通过不同实例而执行不同操作。 优点: 方便代码的维护与拓展。 缺点: 使用多态以后,父类对象指向子类的地址 调用方法不能调用子类的特有方法多态的三个步骤: ** 1. 子类重写父类的方法。 2. 将子类对象赋值给父类。 3. 父类调用方法,实际是调用子类的**。父...原创 2019-10-26 22:33:43 · 84 阅读 · 0 评论 -
java面向对象——封装
面向对象的三大特征:1. 封装:隐藏内部实现,提供对外访问的接口。将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问。构造方法:初始化对象,给对象属性赋初始值。构造方法名必须与类型相同。没有返回值不写void。如果类中没有定义构造方法,系统会提供一个默认的无参构造器。如果定义了带参的构造器,系统不会分配默认无参构造器,要使用必须定...原创 2019-10-27 16:05:12 · 79 阅读 · 0 评论