⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testarray2.java.bak

📁 java编程思想的部分实现
💻 BAK
字号:
//:Generator.java
import java.util.*;
import java.lang.*;
 interface Generator
{
	Object next();
}
 interface BooleanGenerator
{
	boolean next();
}
 interface ByteGenerator
{
	byte next();
}
 interface CharGenerator
{
	char next();
}
 interface ShortGenerator
{
	short next();
}
 interface IntGenerator
{
	int next();
}
 interface LongGenerator
{
	long next();
}
 interface FloatGenerator
{
	float next();
}
 interface DoubleGenerator
{
	double next();
}

//Arrays2
 class Arrays2
{
	private static void start(int from,int to,int length)
	{
		if(from!=0||to!=0)
		System.out.print("["+from+":"+to+"]");
		System.out.print("(");
	}
	private static void end()
	{
		System.out.println(")");
	}
	//object
	public static void print(Object[] a)
	{
		print(a,0,a.length);
		
	}
	public static void print(String msg,Object []a)
	{
		System.out.print(msg+"  ");
		print(a,0,a.length);
	}
	public static void print(Object[]a,int from,int to)
	{
		start(from,to,a.length);
		for(int i=from;i<to;i++)
		{
			System.out.print(a[i]);
			if(i<to-1)
			System.out.print(",");
		}
		end();
	}
	//boolean
	public static void print(boolean[] a)
	{
		print(a,0,a.length);
	}
	public static void print(String msg,boolean[] a)
	{
		System.out.print(msg+"  ");
		print(a,0,a.length);
	}
	public static void print(boolean[]a,int from,int to)
	{
		start(from,to,a.length);
		for(int i=from;i<to;i++)
		{
			System.out.print(a[i]);
			if(i<to-1)
			{
				System.out.print(",");
			}
		}
		end();
	}
	//byte
	public static void print(byte[] a)
	{
		print(a,0,a.length);
	}
	public static void print(String msg,byte[] a)
	{
		System.out.print(msg+"  ");
		print(a,0,a.length);
	}
	public static void print(byte[] a,int from,int to)
	{
		start(from,to,a.length);
		for(int i=from;i<to;i++)
		{
			System.out.print(a[i]);
			if(i<to-1)
			System.out.print(",");
		}
		end();
	}
	//char
	public static void print(char[] a)
	{
		print(a,0,a.length);
	}
	public static void print(String msg,char[]a)
	{
		System.out.print(msg+"   ");
		print(a,0,a.length);
	}
	public static void print(char[] a,int from,int to)
	{
		start(from,to,a.length);
		for(int i=from;i<to;i++)
		{
			System.out.print(a[i]);
			if(i<to-1)
			System.out.print(",");
		}
		end();
	}

//short
	public static void print(short[] a)
	{
		print(a,0,a.length);
	}
	public static void print(String msg,short[]a)
	{
		System.out.print(msg+"   ");
		print(a,0,a.length);
	}
	public static void print(short[] a,int from,int to)
	{
		start(from,to,a.length);
		for(int i=from;i<to;i++)
		{
			System.out.print(a[i]);
			if(i<to-1)
			System.out.print(",");
		}
		end();
	}


//int
	public static void print(int[] a)
	{
		print(a,0,a.length);
	}
	public static void print(String msg,int[]a)
	{
		System.out.print(msg+"   ");
		print(a,0,a.length);
	}
	public static void print(int[] a,int from,int to)
	{
		start(from,to,a.length);
		for(int i=from;i<to;i++)
		{
			System.out.print(a[i]);
			if(i<to-1)
			System.out.print(",");
		}
		end();
	}

//long
	public static void print(long[] a)
	{
		print(a,0,a.length);
	}
	public static void print(String msg,long[]a)
	{
		System.out.print(msg+"   ");
		print(a,0,a.length);
	}
	public static void print(long[] a,int from,int to)
	{
		start(from,to,a.length);
		for(int i=from;i<to;i++)
		{
			System.out.print(a[i]);
			if(i<to-1)
			System.out.print(",");
		}
		end();
	}


//float
	public static void print(float[] a)
	{
		print(a,0,a.length);
	}
	public static void print(String msg,float[]a)
	{
		System.out.print(msg+"   ");
		print(a,0,a.length);
	}
	public static void print(float[] a,int from,int to)
	{
		start(from,to,a.length);
		for(int i=from;i<to;i++)
		{
			System.out.print(a[i]);
			if(i<to-1)
			System.out.print(",");
		}
		end();
	}

//double
	public static void print(double[] a)
	{
		print(a,0,a.length);
	}
	public static void print(String msg,double[]a)
	{
		System.out.print(msg+"   ");
		print(a,0,a.length);
	}
	public static void print(double[] a,int from,int to)
	{
		start(from,to,a.length);
		for(int i=from;i<to;i++)
		{
			System.out.print(a[i]);
			if(i<to-1)
			System.out.print(",");
		}
		end();
	}

	//fill
	public static void fill(Object[]a,Generator gen)
	{
		fill(a,0,a.length,gen);
	}
	public static void fill(Object[]a,int from,int to,Generator gen)
	{
		for(int i=from;i<to;i++)
		a[i]=gen.next();
	}
	//boolean
	public static void fill(boolean[]a,BooleanGenerator gen)
	{
		fill(a,0,a.length,gen);
	}
	public static void fill(boolean[]a,int from,int to,BooleanGenerator gen)
	{
		for(int i=from;i<to;i++)
		a[i]=gen.next();
	}
//byte	
	public static void fill(byte[]a,ByteGenerator gen)
	{
		fill(a,0,a.length,gen);
	}
	public static void fill(byte[]a,int from,int to,ByteGenerator gen)
	{
		for(int i=from;i<to;i++)
		a[i]=gen.next();
	}
	//char
	public static void fill(char[]a,CharGenerator gen)
	{
		fill(a,0,a.length,gen);
	}
	public static void fill(char[]a,int from,int to,CharGenerator gen)
	{
		for(int i=from;i<to;i++)
		a[i]=gen.next();
	}
	//short
	public static void fill(short[]a,ShortGenerator gen)
	{
		fill(a,0,a.length,gen);
	}
	public static void fill(short[]a,int from,int to,ShortGenerator gen)
	{
		for(int i=from;i<to;i++)
		a[i]=gen.next();
	}
	//int
	public static void fill(int[]a,IntGenerator gen)
	{
		fill(a,0,a.length,gen);
	}
	public static void fill(int[]a,int from,int to,IntGenerator gen)
	{
		for(int i=from;i<to;i++)
		a[i]=gen.next();
	}
	//long
	public static void fill(long[]a,LongGenerator gen)
	{
		fill(a,0,a.length,gen);
	}
	public static void fill(long[]a,int from,int to,LongGenerator gen)
	{
		for(int i=from;i<to;i++)
		a[i]=gen.next();
	}
	//float
	public static void fill(float[]a,FloatGenerator gen)
	{
		fill(a,0,a.length,gen);
	}
	public static void fill(float[]a,int from,int to,FloatGenerator gen)
	{
		for(int i=from;i<to;i++)
		a[i]=gen.next();
	}
	//double
	public static void fill(double[]a,DoubleGenerator gen)
	{
		fill(a,0,a.length,gen);
	}
	public static void fill(double[]a,int from,int to,DoubleGenerator gen)
	{
		for(int i=from;i<to;i++)
		a[i]=gen.next();
	}
	private static Random r=new Random();
	public static class RandBooleanGenerator implements BooleanGenerator
	{
		public boolean next()
		{
			return r.nextBoolean();
		}
	}
	public static class RandByteGenerator implements  ByteGenerator
	{
		public byte next()
		{
			return (byte)r.nextInt();
		}
	}
	static String ssource="ABCDEFGHIJKLMNOPQRSTUVWXYZ"+"abcdefghijklmnopqrstuvwxyz";
	static char[] src=ssource.toCharArray();
	public static class RandCharGenerator implements CharGenerator
	{
		public char next()
		{
			int pos=Math.abs(r.nextInt());
			return src[pos%src.length];
		}
	}
	public static class RandStringGenerator implements Generator
	{
		private int len;
		private RandCharGenerator cg=new RandCharGenerator();
		public RandStringGenerator(int length)
		{
			len=length;
		}
		public Object next()
		{
			char[] buf=new char[len];
			for(int i=0;i<len;i++)
			{
				buf[i]=cg.next();
			}
			return new String(buf);
		}
	}
	public static class RandShortGenerator implements ShortGenerator
	{
		public short next()
		{
			return (short)r.nextInt();
		}
	}
	public static class RandIntGenerator implements IntGenerator
	{
		private int mod=10000;
		public RandIntGenerator(){}
		public RandIntGenerator(int modulo)
		{
			mod=modulo;
		}
		public int next()
		{
			return r.nextInt()%mod;
		}
	}
	public static class RandLongGenerator implements LongGenerator
	{
		public long next()
		{
			return r.nextLong();
		}
	}
	public static class RandFloatGenerator implements FloatGenerator
	{
		public float next()
		{
			return r.nextFloat();
		}
	}
	public static class RandDoubleGenerator implements DoubleGenerator
	{
		public double next()
		{
			return r.nextDouble();
		}
	}
	
}

public class TestArray2
{
	public static void main(String[]args)
	{
		int size =6;
		if(args.length!=0)
		size=Integer.parseInt(args[0]);
		boolean[]a1=new boolean[size];
		byte[] a2=new byte[size];
		char[] a3=new char[size];
		short[] a4=new short[size];
		int[] a5=new int[size];
		long[] a6=new long[size];
		float [] a7=new float[size];
		double []a8=new double[size];
		String [] a9=new String[size];
		Arrays2.fill(a1,new Arrays2.RandBooleanGenerator());
		Arrays2.print(a1);
		Arrays2.print("a1= ",a1);
		Arrays2.print(a1,size/3,size/3+size/3);
		
		Arrays2.fill(a2,new Arrays2.RandByteGenerator());
		Arrays2.print(a2);
		Arrays2.print("a2= ",a2);
		Arrays2.print(a2,size/3,size/3+size/3);
		
		Arrays2.fill(a3,new Arrays2.RandCharGenerator());
		Arrays2.print(a3);
		Arrays2.print("a3= ",a3);
		Arrays2.print(a3,size/3,size/3+size/3);
		
		Arrays2.fill(a4,new Arrays2.RandShortGenerator());
		Arrays2.print(a4);
		Arrays2.print("a4= ",a4);
		Arrays2.print(a4,size/3,size/3+size/3);
		
		Arrays2.fill(a5,new Arrays2.RandIntGenerator());
		Arrays2.print(a5);
		Arrays2.print("a5= ",a5);
		Arrays2.print(a5,size/3,size/3+size/3);
		
		Arrays2.fill(a6,new Arrays2.RandLongGenerator());
		Arrays2.print(a6);
		Arrays2.print("a6= ",a6);
		Arrays2.print(a6,size/3,size/3+size/3);
		
		Arrays2.fill(a7,new Arrays2.RandFloatGenerator());
		Arrays2.print(a7);
		Arrays2.print("a7= ",a7);
		Arrays2.print(a7,size/3,size/3+size/3);
		
		Arrays2.fill(a8,new Arrays2.RandDoubleGenerator());
		Arrays2.print(a8);
		Arrays2.print("a8= ",a8);
		Arrays2.print(a8,size/3,size/3+size/3);
		
		Arrays2.fill(a9,new Arrays2.RandDoubleGenerator());
		Arrays2.print(a9);
		Arrays2.print("a9= ",a9);
		Arrays2.print(a9,size/3,size/3+size/3);
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -