Java编程基础:变量交换、随机排序与概率模拟
4星 · 超过85%的资源 需积分: 9 183 浏览量
更新于2024-09-18
收藏 120KB DOC 举报
"这篇资源主要提供了几个常用的Java程序实例,包括如何交换两个变量的值、随机排序以及模拟概率事件。同时,还介绍了Java中的成员变量和局部变量的区别,以及类与类之间的关联关系概念。"
在Java编程中,了解基本概念和实践技巧是至关重要的。以下是对这些内容的详细解释:
1. **交换两个变量的值**:在Java中,传统的交换两个变量a和b的值的方法通常需要一个中间变量。但在提供的示例中,通过算术运算实现交换,避免了中间变量。步骤如下:
- 先将a的值赋给a+b,此时a等于a+b。
- 然后将a的当前值减去b,得到b的原始值,赋给b。
- 最后,再次将a的值减去b,得到a的原始值,赋回给a。这样就完成了a和b的交换。
2. **`Math.random()`**:这是Java中的一个内置函数,用于生成0.0(包含)到1.0(不包含)之间的一个随机浮点数。在上述代码中,它被用于生成1到3之间的随机整数,以实现对2,5,8的随机排序。
3. **随机排序算法**:`RandomNum` 类实现了一个简单的算法,用于生成包含2,5,8的随机序列。`getOneRandom()` 方法生成一个1到3的随机数,`judgeNum()` 方法检查是否已经添加过这个数字到数组,并根据数字更新字符串`str`。通过循环直到数组中有三个不同的元素,实现了对这三个数字的任意排序。
4. **模拟概率事件**:在`RandomNum2` 类中,`getOneNum()` 方法根据给定的概率分布生成2,3,5之一的随机数。它通过比较`Math.random()` 生成的随机浮点数与预设的概率阈值来决定返回哪个值。
5. **成员变量和局部变量的区别**:在Java中,成员变量是属于类的,它们在声明时可以不初始化,系统会自动赋予默认值(如0,null等)。而局部变量(方法内部声明的变量)必须在使用前显式初始化,没有默认值。
6. **类与类的关系**:关联关系是面向对象设计中的一个重要概念,表示一个类中的属性或方法可以引用另一个类的实例。在教师类和学生类的例子中,教师类的`work()` 方法可能会包含对学生类的引用,表示教师和学生之间的教学关联。
这些实例和概念对于Java初学者来说非常实用,可以帮助他们理解基础的编程操作和面向对象设计的基本原则。通过实践这些代码,学习者可以更好地掌握Java编程的核心概念。
2010-03-10 上传
2008-09-02 上传
2012-05-06 上传
2007-08-11 上传
2010-06-11 上传
点击了解资源详情
2018-02-07 上传
2008-11-04 上传
2019-07-10 上传
ml751075306
- 粉丝: 0
- 资源: 6
最新资源
- NIST REFPROP问题反馈与解决方案存储库
- 掌握LeetCode习题的系统开源答案
- ctop:实现汉字按首字母拼音分类排序的PHP工具
- 微信小程序课程学习——投资融资类产品说明
- Matlab犯罪模拟器开发:探索《当蛮力失败》犯罪惩罚模型
- Java网上招聘系统实战项目源码及部署教程
- OneSky APIPHP5库:PHP5.1及以上版本的API集成
- 实时监控MySQL导入进度的bash脚本技巧
- 使用MATLAB开发交流电压脉冲生成控制系统
- ESP32安全OTA更新:原生API与WebSocket加密传输
- Sonic-Sharp: 基于《刺猬索尼克》的开源C#游戏引擎
- Java文章发布系统源码及部署教程
- CQUPT Python课程代码资源完整分享
- 易语言实现获取目录尺寸的Scripting.FileSystemObject对象方法
- Excel宾果卡生成器:自定义和打印多张卡片
- 使用HALCON实现图像二维码自动读取与解码