6.38(生成随机字符)使用程序清单6-10 RandomCharacter中的方法,打印100个大写字母及100个一位数字,每行打印10个

  • 题目
    • 题目描述
    • 程序清单6-10
    • 破题
  • 代码
    • 运行实例

题目

题目描述

6.38(生成随机字符)使用程序清单6-10 RandomCharacter中的方法,打印100个大写字母及100个一位数字,每行打印10个

程序清单6-10

public class qingdan {// 生成随机字符 ch1到ch2之间public static char getRandomCharacter(char ch1, char ch2){return (char) (ch1 + Math.random() * (ch2 - ch1 + 1));}// 生成随机小写字符public static char getRandomLowerCaseLetter(){return getRandomCharacter('a', 'z');}// 生成随机大写字符public static char getRandomUpperCaseLetter(){return getRandomCharacter('A', 'Z');}// 生成随机数字public static char getRandomDigitCharacter(){return getRandomCharacter('0', '9');}// 生成随机字符(Unicode)public static char getRandomCharacter(){return getRandomCharacter('\u0000', '\uFFFF');}
}

破题

使用这个方法:

public static char getRandomCharacter(char ch1, char ch2){return (char) (ch1 + Math.random() * (ch2 - ch1 + 1));
}

这个方法就可以随机生成从ch1到ch2的字符
对源代码进行中度改写,main方法加上两次循环控制语句控制相关方法的调用即可

代码

public class Test6_38 {// 主方法public static void main(String[] args) {int count = 0;      //计数变量for (int a = 1; a <= 100;a++){System.out.print(getRandomUpperCaseLetter() + " ");count++;if (count % 10 == 0)System.out.println();}count = 0;for (int b = 1; b <= 100;b++){System.out.print(getRandomDigitCharacter() + " ");count++;if (count % 10 == 0)System.out.println();}}// 生成随机字符 ch1到ch2之间public static char getRandomCharacter(char ch1, char ch2){return (char) (ch1 + Math.random() * (ch2 - ch1 + 1));}// 生成随机大写字符public static char getRandomUpperCaseLetter(){return getRandomCharacter('A', 'Z');}// 生成随机数字public static char getRandomDigitCharacter(){return getRandomCharacter('0', '9');}
}

运行实例

G D N X D W I M X Q
W L X Z D R J Y Q Q
B D P W P F J O V I
V O A N F Z R D M Y
T W P E E Z T R U W
A B T I L M T F Z F
U Y T X Y G F P V N
S Z E Z V O T T Z A
L J U L Z F E M V C
N M F I N X J U R Y
3 2 1 2 6 2 9 2 4 4
3 2 0 8 5 8 4 8 6 8
7 4 7 7 6 8 5 2 2 6
4 6 9 3 1 4 6 5 5 2
2 3 2 9 2 4 1 4 8 3
5 0 6 8 1 3 4 9 7 5
2 5 8 7 6 6 1 1 7 9
5 3 6 5 1 6 1 4 5 9
2 8 1 6 7 4 5 8 5 6
5 8 3 7 6 4 6 9 7 3

Java黑皮书课后题第6章:*6.38(生成随机字符)使用程序清单6-10 RandomCharacter中的方法,打印100个大写字母及100个一位数字,每行打印10个相关推荐

  1. Java黑皮书课后题第9章:9.2(Stock类)遵照9.2节中Cirlce类的例子,设计一个名为Stock的类

    Java黑皮书课后题第9章:9.2(Stock类)遵照9.2节中Cirlce类的例子,设计一个名为Stock的类 题目 代码 Test2 Test2_Stock UML图 题目 代码 Test2:测试 ...

  2. Java黑皮书课后题第9章:9.1 (Rectangle类)遵照9.2节中Circle类的例子,设计一个名为Rectangle的类表示矩形

    Java黑皮书课后题第9章:9.1 (Rectangle类)遵照9.2节中Circle类的例子,设计一个名为Rectangle的类表示矩形 题目 代码 PS Test1 Test1_Rectangle ...

  3. Java黑皮书课后题第7章:**7.19(是否排好序了?)编写以下方法,如果参数中的list数组已经排好序了则返回true。编写一个测试程序,提示用户输入一个列表,显示该列表是否已经排好序

    7.19(是否排好序了?)编写以下方法,如果参数中的list数组已经排好序了则返回true.编写一个测试程序,提示用户输入一个列表,显示该列表是否已经排好序 题目 题目描述 破题 代码 题目 题目描述 ...

  4. Java黑皮书课后题第11章:11.2(Person Student Employee Faculty Staff类)设计一个名为Person的类及其两个名为Student和Employee的子类

    Java黑皮书课后题第11章:11.2(Person Student Employee Faculty Staff类) 题目 缺陷 UML图 代码 Test02_MyDate.java:用于参考的My ...

  5. Java黑皮书课后题第9章:**9.13(Location类)设计一个名为Location的类,定位二维数组中的最大值及其位置。

    Java黑皮书课后题第9章:**9.13(Location类)设计一个名为Location的类,定位二维数组中的最大值及其位置 题目 破题 代码 Test13 Test13_Location 运行结果 ...

  6. Java黑皮书课后题第9章:**9.12(几何:交点)假设两条线段相交。第一条线段的两个端点是(x1, y1)和(x2, y2),第二条线段的两个端点是(x3, y3)和(x4, y4)

    Java黑皮书课后题第9章:**9.12(几何:交点)假设两条线段相交.第一条线段的两个端点是(x1, y1)和(x2, y2),第二条线段的两个端点是(x3, y3)和(x4, y4) 题目 破题 ...

  7. Java黑皮书课后题第9章:*9.11(代数:2*2的线性方程)为一个2*2的线性方程设计一个名为LinearEquation的类

    Java黑皮书课后题第9章:*9.11(代数:2*2的线性方程)为一个2*2的线性方程设计一个名为LinearEquation的类 题目 破题 代码 Test10 Test11_LinearEquat ...

  8. Java黑皮书课后题第9章:*9.10(代数:二次方程式)为二次方程式设计一个名为QuadraticEquation的类

    Java黑皮书课后题第9章:*9.10(代数:二次方程式)为二次方程式设计一个名为QuadraticEquation的类 题目 破题 代码 Test10 Test10_QuadraticEquatio ...

  9. Java黑皮书课后题第9章:*9.6(秒表)设计一个名为StopWatch的类,该类包含……。编写一个测试程序,用于测量使用选择排序对100000个数字进行排序的执行时间

    Java黑皮书课后题第9章:*9.6(秒表)设计一个名为StopWatch的类,该类包含--.编写一个测试程序,用于测量使用选择排序对100000个数字进行排序的执行时间 题目 破题 代码 Test6 ...

  10. Java黑皮书课后题第9章:*9.5(使用GregorianCalendar类)Java API中有一个位于包java.util中的类GregorianCalendar

    Java黑皮书课后题第9章:*9.5(使用GregorianCalendar类)Java API中有一个位于包java.util中的类GregorianCalendar 题目 代码 题目 代码 imp ...

最新文章

  1. 使用Intellij中的Spring Initializr来快速构建Spring Boot/Cloud工程(十五)
  2. C语言函数集(十五)
  3. 如何打造规范的开源项目workflow
  4. Eclipse | 使用
  5. jquery地址栏链接与a标签链接匹配添加样式!
  6. EasyUI中layout布局的简单使用
  7. 11WinDlg 对话框一
  8. 正则化与L0、L1、L2范数略解
  9. awk、变量、运算符、if多分支
  10. 每天坚持不懈的写软文,得到的几点心得感悟
  11. ADO.NET的记忆碎片(七)
  12. 数据结构之基于Java的顺序栈实现
  13. Flutter基础(十三)Flutter与Android的相互通信
  14. Linux系统常用工具集
  15. ad如何计算电路板的pin数量_PCB厂一到八层电路板的叠层设计方式
  16. 看书必备:40个全球免费开放电子图书馆
  17. pagesize==0异常问题
  18. *TEST 1 for NOIP
  19. uniapp APPH5端获取地理位置信息(百度地图高德地图)
  20. java11规范_京东Java编码规范V11.pdf

热门文章

  1. 参数变化_PDP驱动波形参数分析
  2. python key lambda_使用“key”和lambda表达式的python max函数
  3. 你的Wi-Fi 还安全吗?全球重大漏洞WPA2 KRACK 详细分析报告
  4. 入门顶点动画纹理的实例化绘制
  5. 技术分享 |《原神》部分渲染效果分析
  6. 《王者荣耀》主策划Xavier分享腾讯游戏10年在职经历
  7. 云数据库RDS_MySQL购买流程_以及购买步骤的建议
  8. innobackupex中--slave-info参数的含义和适用场景
  9. 关于Expdp/Impdp 并行导入导出详细测试结果和并行参数的正确理解!!
  10. EXP-00091 正在导出有问题的统计信息 问题的解决(转)