- 博客(19)
- 收藏
- 关注
原创 2020-12-28
获取两个字符串中最大的相同字串(简易的实现步骤:)package ChangyongLeideshiyong;import org.junit.Test;public class StringDemo3 { /* * 获取两个字符串中最大的相同字串,比如: * str1 ="abcwerthelloyuiodef"; str2 = "cvhellobnm"; * 提示:将短的那个串进行长度依次递减的字串与较长的串比较。 * */ public Str
2020-12-28 22:59:29
80
原创 2020-12-28
package ChangyongLeideshiyong;import org.junit.Test;import java.util.Arrays;public class StringTest02 { @Test public void test1(){ String s1 ="hello world"; System.out.println(s1.charAt(3)); //返回指定下标的元素 System.out.prin
2020-12-28 19:11:33
57
原创 2020-12-28
package ChangyongLeideshiyong;import org.junit.Test;//关于StringBuffer和Stringbuilder的使用:public class StringBufferBuilderTest{ /* * 关于String和StringBuffer、StringBuilder的区别: * 三者的相同点:底层都是char[]型数组!!(注意:只有String前面加了final,表示不可变的!!) * String:
2020-12-28 19:10:02
60
原创 2020-12-28
package ChangyongLeideshiyong;import org.junit.Test;public class StringDemo1 { /* * 将一个字符串进行反转。将字符中指定的部分进行反转。比如“abcdefg”转换成“abfedcg” * 方式一:利用char[]型数组进行反转 * */ public String reverse(String str,int startIndex,int endIndex) {
2020-12-28 19:08:03
67
1
原创 2020-12-28
import org.junit.Test;//获取一个字符串在另一个字符串中出现的次数,用两种不铜的方式进行实现:public class StringDemo2 { /* * 获取一个字符串另一个字符串中出现的次数。 * 比如:获取”ab“在”abkkcadkabkebfkabkskab“ * */ public int getCount(String mainStr,String subStr){ int mainLength = main.
2020-12-28 19:04:43
44
原创 2020-12-14
java用继承分别使用两种方式加锁:synchronized 和lockpackage javaTest;/** 银行有一个账户,有两个储户分别向向同一个账户存3000元,* 每次存1000,存3次。每次存完打印账户余额。* */public class AccountTest { public static void main(String[] args) { Account acct = new Account(0); //创建一个账户
2020-12-14 20:35:18
47
原创 2020-12-13
java中同步代码块的使用:/** 例子:创建三个窗口卖票,总票数100张* 存在线程安全问题* */class Window extends Thread{ private static int ticket = 100; private static Object obj = new Object(); //将这个对象改成static(唯一对象) //重写run方法 @Override public void run() { while
2020-12-13 17:50:06
57
原创 java中多线程的创建方式二:
话不多说,先写创建多线程的具体步骤:创建多线程的方式二:实现Runnable接口1.创建一个实现Runnable接口的类2.实现类去实现Runnable接口中的抽象方法:run()3.创建实现类的对象4.将此对象作为参数传递到Thread类的构造器中,创建Thread类的对象5.通过Thread类的对象调用start()方法class MThread implements Runnable { @Override //实现接口Runnable中的抽象方法run() publ
2020-12-08 16:49:44
53
原创 java线程优先级的使用:
* 线程的优先级:* MAX_PRIORITY:10* MIN_PRIORITY:1* NORM_PRIORITY:5 线程的默认优先级* 如何获取当前线程的优先级:* getPriority():获取* setPriority(int p):设置class HelloThread extends Thread{ //重写父类中的run() @Override public void run() { for (int i = 0; i <100
2020-12-08 15:15:02
158
原创 测试Thread类中的常用方法
/** 测试Thread类中的常用方法:* 1、start():启动当前线程;调用当前线程的run()方法* 2、run():通常重写Thread类中的此方法,将创建的线程要执行的操作声明在此方法中* 3、currentThread():静态方法,返回执行当前代码的线程* 4、getName():获取当前线程的名字* 5、setName():设置当前线程的名字* 6、yield():当线程执行此方法的时候,释放当前的cpu的执行权* 7、join():在线程a中调用线程b的join(),此时
2020-12-07 18:42:26
81
原创 java匿名子类的使用
public class PersonTest { public static void main(String[] args) { //创建匿名子类的对象p,重写抽象类中的方法 Person p1 = new Person(){ //注意new的对象不是抽象方法的对象,而是Person匿名子类的对象 //这是个匿名子类,我们需要重写抽象类中的所有抽象方法 public void eat() { System.out.println("人吃饭~~"); } publ
2020-12-06 23:38:55
551
原创 关于java中包装类的面试题
import org.junit.Test; //关于包装类的经典面试题:public class BaoZhuangLeiMianShiTi { @Test public void test1() { Object o1 =true ? new Integer(1):new Double(2.0); System.out.println(o1); //1.0 原因:三元运算符有自动类型提升,默认将int类型提升至double类型 } @Test public void te
2020-12-06 23:14:39
192
原创 java中二分查找方法的使用
import java.util.Arrays;public class ErFenChaZhaoTest {// 利用二分查找的方法进行数组中的元素//二分查找的前提:数组必须为有序(降序和升序都可以) public static void main(String[] args) { int[] arr =new int[] {12,231,21,120,43241,32,124}; Arrays.sort(arr); //将数组进行排序 System.out.println(Arra
2020-12-06 23:11:06
113
原创 java中Vector可变对象数组的使用(包装类、向下转型、自动装包)
import java.util.Scanner;import java.util.Vector;public class VectorTest {public static void main(String[] args){ //实例化Scanner用于键盘输入学生的成绩 Scanner sc = new Scanner(System.in); //创建Vector对象(实际上就是可变成长度的对象数组) Vector v = new Vector(); //
2020-12-06 23:07:10
257
原创 简易的java模板方法的设计模式
简易的java模板方法的设计模式public class TemplateTest { /* * 抽象类的应用:模板方法的设计模式*/ public static void main(String[] args) { Template t = new SubTemplate(); //多态的使用// SubTemplate t =new SubTemplate(); t.spendTime(); }}abstract c
2020-12-06 23:03:29
54
原创 java简易的单例模式之懒汉模式:
java简易的单例模式之懒汉模式:public class SingletonTest2 { public static void main(String[] args) { Order order1 = Order.getInstance(); Order order2 = Order.getInstance(); System.out.println(order1 == order2); if (order1 == order2)
2020-12-06 23:00:18
70
原创 利用匿名子类的方式创建多线程:
/创建两个分线程,其中一个线程遍历100以内的偶数,另一个线程遍历100以内的奇数public class ThreadDemo { public static void main(String[] args) { //方式一:// MyThread1 m1 = new MyThread1();// m1.start();// MyThread2 m2 = new MyThread2();// m2.start();
2020-12-06 22:48:24
149
1
原创 java中多线程的创建方式一:
//多线程的创建://方式一:继承于Thread类的方式进行创建//1、创建一个继承Thread类的子类//2、重写Thread类中的run()方法–>将此线程执行的操作写在run方法中//3、创建Thread类的子类的对象//4、通过子对象去调用start()下面的是具体实例:由主方法main中可以看出,我们是创建了一个对象,然后通过,该对象调用Thread类中的start()方法,从m.start()这里创建了另外一个线程,而下面的方法实在主线程中执行的,我们可以验证:通过执行
2020-12-06 21:32:34
1860
6
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人