动手动脑(2)
发布时间:2020-12-15 07:35:12 所属栏目:Java 来源:网络整理
导读://方法重载 public class MethodOverload { public static void main(String[] args) { System.out.println( "The square of integer 7 is " + square(7 )); System.out.println( "nThe square of double 7.5 is " + square(7.5 )); } public static int sq
//方法重载 运行结果: ? ? ? 以上代码为Java中方法的重载,构成条件为:1.方法名相同 2.参数类型、个数或参数类型的顺序不同,与返回值类型无关 在Java中定义方法//求平方数的静方法 public class SquareInt { public static void main(String[] args) { int result; for (int x = 1; x <= 10; x++) { result = square(x); // Math库中也提供了求平方数的方法 // result=(int)Math.pow(x,2); System.out.println("The square of " + x + " is " + result + "n"); } } // 自定义求平方数的静态方法 public static int square(int y) { return y * y; } } 运行结果: ? 随机数生成使用Math.random()生成随机数// RandomInt.java // Shifted,scaled random integers import javax.swing.JOptionPane; public class RandomInt { public static void main( String args[] ) { int value; String output = ""; for ( int i = 1; i <= 20; i++ ) { value = 1 + (int) ( Math.random() * 6 ); //生成0~5之间的随机数 output += value + " "; if ( i % 5 == 0 ) output += "n"; } JOptionPane.showMessageDialog( null,output,"20 Random Numbers from 1 to 6",JOptionPane.INFORMATION_MESSAGE ); System.exit( 0 ); } } ? ?运行结果: ? 使用Random类生成随机数? import java.util.*; public class TestRandom { public static void main(String[] args) { Random rand = new Random(); System.out.println("rand.nextBoolean():" + rand.nextBoolean()); byte[] buffer = new byte[16]; rand.nextBytes(buffer); System.out.println(Arrays.toString(buffer)); //生成0.0~1.0之间的伪随机double数 System.out.println("rand.nextDouble():" + rand.nextDouble()); //生成0.0~1.0之间的伪随机float数 System.out.println("rand.nextFloat():" + rand.nextFloat()); //生成平均值是 0.0,标准差是 1.0的伪高斯数 System.out.println("rand.nextGaussian():" + rand.nextGaussian()); //生成一个处于long整数取值范围的伪随机整数 System.out.println("rand.nextInt():" + rand.nextInt()); //生成0~26之间的伪随机整数 System.out.println("rand.nextInt(26):" + rand.nextInt(26)); //生成一个处于long整数取值范围的伪随机整数 System.out.println("rand.nextLong():" + rand.nextLong()); } } ? ?运行结果: ? 利用种子生成随机数 import java.util.Random; /* * 随机数是种子经过计算生成的。 不含参的构造函数每次都使用当前时间作为种子,随机性更强 而含参的构造函数其实是伪随机,更有可预见性 */ public class TestSeed { public static void main(String[] args) { Random r1 = new Random(50); System.out.println("第一个种子为50的Random对象"); System.out.println("r1.nextBoolean():t" + r1.nextBoolean()); System.out.println("r1.nextInt():tt" + r1.nextInt()); System.out.println("r1.nextDouble():t" + r1.nextDouble()); System.out.println("r1.nextGaussian():t" + r1.nextGaussian()); System.out.println("---------------------------"); Random r2 = new Random(50); System.out.println("第二个种子为50的Random对象"); System.out.println("r2.nextBoolean():t" + r2.nextBoolean()); System.out.println("r2.nextInt():tt" + r2.nextInt()); System.out.println("r2.nextDouble():t" + r2.nextDouble()); System.out.println("r2.nextGaussian():t" + r2.nextGaussian()); System.out.println("---------------------------"); Random r3 = new Random(100); System.out.println("种子为100的Random对象"); System.out.println("r3.nextBoolean():t" + r3.nextBoolean()); System.out.println("r3.nextInt():tt" + r3.nextInt()); System.out.println("r3.nextDouble():t" + r3.nextDouble()); System.out.println("r3.nextGaussian():t" + r3.nextGaussian()); Random r4 = new Random(System.currentTimeMillis()); System.out.println("以当前时间为种子的Random对象"); System.out.println("r3.nextBoolean():t" + r4.nextBoolean()); System.out.println("r3.nextInt():tt" + r4.nextInt()); System.out.println("r3.nextDouble():t" + r4.nextDouble()); System.out.println("r3.nextGaussian():t" + r4.nextGaussian()); } } 运行结果: (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |