网看剑指offer记录
单例模式实现*(创建一个类,只能生成该类的一个实例)
public class singleDog { //创建对象 private static singleDog si=new singleDog(); //私有化构造方法 private singleDog(){ } //饿汉模式,线程安全,效率低。 //加载时就直接创建对象 public static singleDog get(){ return si; } }
package hospital.entity; public class SingleDog { private static SingleDog si=null; private SingleDog(){ } //饿汉模式,线程安全版 public static SingleDog get(){ if(si==null){ synchronized (SingleDog.class) { if(si==null){ si=new SingleDog(); } } } return si; } }
package hospital.entity; public class demo { public static void main(String[] args) { // TODO Auto-generated method stub //在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。 //请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 int [][] sum={{1,2,3},{4,5,6},{7,8,9,10}}; //所需要求的数 int num=6; //求出有几个数组,也就是几行 int rowNum=sum.length; for(int i=0;i<rowNum;i++){ //求出第一行数据 int[] oneSum=sum[i]; int colNum=sum[i].length; //因为是递增数组,直接去对比第一行的最大的数 if(num==oneSum[colNum-1]){ System.out.println("数字在第"+(i+1)+"行,第"+(colNum)+"个位置"); } //如果大于这一行最大的数,直接跳过本次循环 if(num>oneSum[colNum-1]){ continue; } if(num<oneSum[colNum-1]){ for(int j=0;j<oneSum.length;j++){ if(oneSum[j]==num){ System.out.println("数字在第"+(i+1)+"行,第"+(j+1)+"个位置"); } } } } } }
package hospital.entity; public class charToBlank { public static void main(String[] args){ char [] str={'2',' ','5','6',' ',' ',' ','8' }; for(int i=0;i<str.length;i++){ System.out.print(str[i]); } //将数组里的空格替换掉位任意字符 char a='*'; for(int i=0;i<str.length;i++){ if(str[i]==' '){ str[i]=a; } } System.out.println(); for(int i=0;i<str.length;i++){ System.out.print(str[i]); } } }