diff --git a/HomeWork.md b/HomeWork.md new file mode 100644 index 0000000..1cbc46a --- /dev/null +++ b/HomeWork.md @@ -0,0 +1,140 @@ +- 3月26日作业 + - [文本写入文件](https://github.com/vagabond1-1983/javaDemo/tree/dev/src/main/java/com/bt/xlt/homework0326) + 将下面一段文字写入文件,(并从文件读出),请用map转存即记录数据 first=你好 second=hello third=早上好 fourth=晚上好 + - [1 mijuan](src/main/java/com/bt/xlt/homework0326/MiJuanFileReaderStreamHomework.java) - 能够用BufferWriter写入字。改进点:流在finally里面关闭 + - [2 maxiaoyu](src/main/java/com/bt/xlt/homework0326/MaXiaoYuFileReadByMap.java) - 能多考虑到输入的map顺序,不错 + - [3 liwen](src/main/java/com/bt/xlt/homework0326/LiWenFileRWDemo.java) - 不错,如果能再多想想方法封装就更好了 + - [4 jiabin](src/main/java/com/bt/xlt/homework0326/JiaBinReadWriteTest.java) - 不错,善用TreeMap保持输入顺序 + - [5 lidongkun](src/main/java/com/bt/xlt/homework0326/FileIO.java) - 流的关闭需要在finally里面 + - [6 weiyuxin](src/main/java/com/bt/xlt/homework0326/WeiYuXinInputAndOutputFile.java) + - [7 xiaoma](src/main/java/com/bt/xlt/homework0326/XiaoMaProject.java) -- 不少同学提前实现了Buffer Reader, Buffer Writer + - [8 lichangxing](src/main/java/com/bt/xlt/homework0326/LiChangxingWriteFile.java) -- 代码规范呢? + - [9 wangxiaojia](src/main/java/com/bt/xlt/homework0326/WangXiaoJia_FileReaderWriter.java) + - [10 xueguiyang](src/main/java/com/bt/xlt/homework0326/xueguiyang_MapToFile.java) + - [11 qizhi](src/main/java/com/bt/xlt/homework0326/FileOperateTest.java) -- 能够用基本的面向对象的思想考虑问题。文件操作类提供了写数据和读数据的方法 + - [12 chencaiyu](src/main/java/com/bt/xlt/homework0326/ChenCaiYu_File.java) + - [13 fangweili](src/main/java/com/bt/xlt/homework0326/FangweiliFileStream.java) + - [14 jiyaping](src/main/java/com/bt/xlt/homework0326/Jiyapingmap.java) + + + +- 3月19日作业 + - [求多边形面积](https://github.com/vagabond1-1983/javaDemo/tree/dev/src/main/java/com/bt/xlt/homework0319) + 定义一个图形父类abstract Shape,包含求面积的方法getArea(),扩展子类:圆Circle、矩形Square、三角形Triangle,分别重写求面积方法。 + 用户可以选择输入某一个多边形,输入数据后,求出这个多边形的面积 + - [1 mijuan](src/main/java/com/bt/xlt/homework0319/mijuan/MiJuanArea.java) + - [2 xueguiyang](src/main/java/com/bt/xlt/homework0319/xueguiyang/XueguiyangTestShape.java) -- 构造函数的访问范围 + - [3 xiaoma](src/main/java/com/bt/xlt/homework0319/xiaoma/XiaomaTestDemo.java) + - [4 lichangxing](src/main/java/com/bt/xlt/homework0319/lichangxing/LiChangxingTestShapeDemo.java) -- 用构造函数初始化属性值,会比可变长度的参数要好 + - [5 jiabin](src/main/java/com/bt/xlt/homework0319/jiabin/JiaBinShapeTest.java) -- 契合题意,更好使用构造函数初始化属性值 + - [6 lidongkun](src/main/java/com/bt/xlt/homework0319/lidongkun/ShapeArea.java) -- 不错 + - [7 weiyuxin](src/main/java/com/bt/xlt/homework0319/weiyuxin/WeiYuXinArea.java) -- 深入理解抽象类 + - [8 chencaiyu](src/main/java/com/bt/xlt/homework0319/chencaiyu/ChenCaiYu_Area.java) + - [9 maxiaoyu](src/main/java/com/bt/xlt/homework0319/maxiaoyu/ClassDemo.java) -- 不错 + - [10 liwen](src/main/java/com/bt/xlt/homework0319/liwen/LiWenGetArea.java) -- 不错,题意理解正确,多态理解正确 + - [11 qizhi](src/main/java/com/bt/xlt/homework0319/qizhi/TestShape.java) -- 不错,程序标准,题意理解正确,多态理解正确 + - [12 wangxiaojia](src/main/java/com/bt/xlt/homework0319/wangxiaojia/Wangxiaojia_Shape.java) + - [13 jiyaping](src/main/java/com/bt/xlt/homework0319/jiyaping/JyapingTest .txt) -- 作业是检验学习成果的一个途径,知道大家都很忙,一定要坚持,你会发现坚持后的回报的 + - [14 zhaojie](src/main/java/com/bt/xlt/homework0319/zhaojie/ZhaojieShapeArea.java) + - [15 fangxu](src/main/java/com/bt/xlt/homework0319/fangxu/Fangxu_Calculate_Area.java) + + + - 感悟: + - 构造函数没有特殊情况,一般用public修饰 + - 永远不要相信用户输入,用语言规定好。 + 比方说:不想别人访问的私有属性,一定要定义成私有的; + 参数是整数的,不要定义为String + 想要大于0的数或者对象访问,一定要判断之后再用 + - 大家写的越来越好了,从代码规范到程序结构到程序内容,都越来越好 + - liwen,qizhi的做范文讲解 + - 作业态度问题、出勤率问题、随堂练习,【态度】只说一次 + +- 3月12日作业 + - [一:求值](https://github.com/vagabond1-1983/javaDemo/tree/dev/src/main/java/com/bt/xlt/homework0312/getValues) + 给定一个数组62,53,41,84,77,55,输出平均值、最大值、最小值、中位数 + - [1 jiabin](src/main/java/com/bt/xlt/homework0312/getValues/JiaBinCheckNum.java) -- 可参考 + - [2 xiaoma](src/main/java/com/bt/xlt/homework0312/getValues/XiaoMa.java) -- 规范、注意点 + - [3 xueguiyang](src/main/java/com/bt/xlt/homework0312/getValues/XueGuiYangCheckNum.java) + - [4 weiyuxin](src/main/java/com/bt/xlt/homework0312/getValues/WeiYuXinGetValueTest.java) -- 变量声明问题 + - [5 lidongkun](src/main/java/com/bt/xlt/homework0312/getValues/LiDongKunArraysValues.java) + - [6 maxYiaoyu](src/main/java/com/bt/xlt/homework0312/getValues/MaXiaoYuArrayFind.java) -- 代码规范好,简单化问题 + - [7 lichangxing](src/main/java/com/bt/xlt/homework0312/getValues/LiChangxingArraryCompare.java) -- 中位数的理解问题,也是对需求的理解 + - [8 liwen](src/main/java/com/bt/xlt/homework0312/getValues/LiWenArrayOperate.java) + - [9 fangweili](src/main/java/com/bt/xlt/homework0312/getValues/FangWeiLiArrayOperation.java) -- 给定数组为随机数组,好的测试方法 + - [10 chencaiyu](src/main/java/com/bt/xlt/homework0312/getValues/ChenCaiYu_Evaluate.java) + - [11 qizhi](src/main/java/com/bt/xlt/homework0312/getValues/QiZhiArrayOperate.java) -- 能考虑到数据个数为1的特殊情况,增加了程序的健壮性 + - [12 wangxiaojia](src/main/java/com/bt/xlt/homework0312/getValues/WangXiaoJiaGetValues.java) + - [13 zhaojie](src/main/java/com/bt/xlt/homework0312/getValues/ZhaoJieArray.java) + - [14 fangxu](src/main/java/com/bt/xlt/homework0312/getValues/Fangxu_array.java) + + + - [二:计算机类](https://github.com/vagabond1-1983/javaDemo/tree/dev/src/main/java/com/bt/xlt/homework0312/computer) + 设计一个计算机类,要求如下: + -- 属性:品 牌、颜色、cpu、内存容量、价格、工作状态 + -- 方法:打开、关闭、休眠 + -- 创建一个计算机对象,调用打开、关闭方法。 + -- 打开时显示品牌、颜色、cpu、内存容量、价格、工作状态为正常; + -- 关闭时,显示工作状态为停止; + -- 休眠时,显示工作状态为睡眠。 + - [1 jiabin](src/main/java/com/bt/xlt/homework0312/computer/JiaBinComputerTest.java) + - [2 xiaoma](src/main/java/com/bt/xlt/homework0312/computer/XiaoMaComputerTest.java) -- 规范、注意点 + - [3 xueguiyang](src/main/java/com/bt/xlt/homework0312/computer/XueGuiYangComputerTest.java) -- 变量第一个字母小写 + - [4 weiyuxin](src/main/java/com/bt/xlt/homework0312/computer/WeiYuXinComputerDemo.java) -- 对this的使用不错 + - [5 lidongkun](src/main/java/com/bt/xlt/homework0312/computer/LiDongKunComputerState.java) -- 带参数的构造函数 + - [6 maxiaoyu](src/main/java/com/bt/xlt/homework0312/computer/MaXiaoYuClassDemo.java) -- 方法名第一个字母小写 + - [7 lichangxing](src/main/java/com/bt/xlt/homework0312/computer/LichangxingComputerDemo.java) + - [8 liwen](src/main/java/com/bt/xlt/homework0312/computer/LiWenComputerTest.java) + - [9 fangweili](src/main/java/com/bt/xlt/homework0312/computer/FangWeiLiComputerObject.java) -- 编程技巧之封装 + - [10 chencaiyu](src/main/java/com/bt/xlt/homework0312/computer/ChenCaiYuComputer.java) -- 让构造函数发挥更大作用 + - [11 qizhi](src/main/java/com/bt/xlt/homework0312/computer/QiZhiComputerTest.java) -- super的作用,无参数构造函数需不需要写,StringBuffer的作用及使用场景 + - [12 wangxiaojia](src/main/java/com/bt/xlt/homework0312/computer/WangXiaoJiaComputer.java) + - [13 zhaojie](src/main/java/com/bt/xlt/homework0312/computer/ZhaoJieComputer.java) + - [14 fangxu](src/main/java/com/bt/xlt/homework0312/computer/Fangxu_MyComputer.java) -- 能想到与用户互动,不错 + + - 感悟: + - 代码规范,还是要注意,包括文件名、变量名、方法名、语义等简单规范。 + - 理解题意最重要,既然是一个程序,做一次排序就好。不要自己想的太复杂,化繁为简是能力 + - 在定义变量类型时,要推敲。好的类型会让你程序更轻松,坏的类型会让你抓狂。不要把变量都定义为String,它不是万能的。 + - 作业涉及多个java文件,打包给我即可 + + +- [3月5日作业](https://github.com/vagabond1-1983/javaDemo/tree/dev/src/main/java/com/bt/xlt/homework0305) + 请编写一个程序,接收用户输入的三个数,判断是否可以组成三角形(两条边相加大于第三条边)。 + - [1 mijuan](src/main/java/com/bt/xlt/homework0305/MiJuanHomeworkOperator.java) -- 代码规范 + - [2 jiabin](src/main/java/com/bt/xlt/homework0305/JiaBinPanDuanSanJiaoXing.java) -- System.in + - [3 xiaoma](src/main/java/com/bt/xlt/homework0305/XiaoMa.java) + - [4 lichangxin](src/main/java/com/bt/xlt/homework0305/LiChangXin.java) + - [5 xueguiyang](src/main/java/com/bt/xlt/homework0305/XueGuiYang.java) -- 能考虑到三角形的边长可以是非整数,很好 + - [6 jiyaping](src/main/java/com/bt/xlt/homework0305/JiYaPingHomework_operator.java) -- [逻辑与和按位与](https://github.com/vagabond1-1983/javaDemo/issues/9) + - [7 qizhi](src/main/java/com/bt/xlt/homework0305/QiZhiTriangle.java) + - [8 maxiaoyu](src/main/java/com/bt/xlt/homework0305/MaXiaoYu.java) -- 不同的思路,分享下 + - [9 lidongkun](src/main/java/com/bt/xlt/homework0305/LiDongKunHomework_operator.java) + - [10 liwen](src/main/java/com/bt/xlt/homework0305/LiWenHomework_operator.java) + - [11 weiyuxin](src/main/java/com/bt/xlt/homework0305/WeiYuXinHomeWorkTest.java) -- else if + - [12 wangxiaojia](src/main/java/com/bt/xlt/homework0305/WangXiaoJia.java) + - [13 chencaiyu](src/main/java/com/bt/xlt/homework0305/ChenCaiYu.java) + - [14 fangweili](src/main/java/com/bt/xlt/homework0305/FangWeiLi.java) + - [15 jichenguang](src/main/java/com/bt/xlt/homework0305/JiChenGuang.java) + - [16 fangxu](src/main/java/com/bt/xlt/homework0305/FangXu.java) + - [17 zhaojie](src/main/java/com/bt/xlt/homework0305/ZhaoJieCheckTriangle.java) -- 不错 + - [18 guoleiming](src/main/java/com/bt/xlt/homework0305/GuoLeiMing.java) + + - 注意点 + - 代码规范 + - 文件名使用姓名做文件名前缀,这样容易区分。比方MaXiaoYu_Homework_Operator + 在自己写某一个java文件时,用功能起名。比方Triangle.java,不要用汉语拼音SanJiaoXing。 + - 类开头有一段注释以/**开始,里面必须有作者信息和创建时间 + - 大括号用法 + - 赋值语句写法 int a = b; 中间空格不可少,这样别人在看的时候更清晰 + - 判断语句写法 if (true) {} if后面加一个空格 + - 代码缩进是一个tab + - 编码格式 + - 会有同学发过来后是乱码的情况,请确认下项目的编码格式为UTF-8 + - 作业存放位置 + - 地址在 [https://github.com/vagabond1-1983/javaDemo/tree/dev/src/main/java/com/bt/xlt/](https://github.com/vagabond1-1983/javaDemo/tree/dev/src/main/java/com/bt/xlt/)下面会有每期的作业文件夹 + - 作业邮件发我邮箱 + - TODO待办项 + - 作业我都会看,有的会有TODO这个待办项。大家可以自行练习。 + - Issue + - 有任何问题可以在群里说,更好的话可以记录在issue中。大家都能看到并且随时回顾。 + - 有些课上没解决的,或者是比较重要的概念。我都记录在[issue](https://github.com/vagabond1-1983/javaDemo/issues)里面了。大家可以在下面评论,确认下是否理解了。 diff --git a/README.md b/README.md index 5378334..095b28b 100644 --- a/README.md +++ b/README.md @@ -26,8 +26,8 @@ - 例1:[ClassDemo](src/main/java/com/test/basic/chapter4/ClassDemo.java) -- 类和对象的概念 - 例2:[PropertyDemo](src/main/java/com/test/basic/chapter4/PropertyDemo.java) -- 成员变量 - 例3:[MethodDemo](src/main/java/com/test/basic/chapter4/MethodDemo.java) -- 成员方法 - - 随堂:设计一个计算机类,要求如下: - 属性:品 牌、颜色、cpu、内存容量、价格、工作状态 + - 作业:设计一个计算机类,要求如下: + 属性:品牌、颜色、cpu、内存容量、价格、工作状态 方法:打开、关闭、休眠 创建一个计算机对象,调用打开、关闭方法。 - 例4:[Constructor](src/main/java/com/test/basic/chapter4/Constructor.java) -- 构造函数 @@ -75,3 +75,4 @@ - 附: - Intellij IDEA详细使用说明参见另一个工程[intellij-idea-tutorial](https://github.com/vagabond1-1983/IntelliJ-IDEA-Tutorial) + - [作业情况](HomeWork.md) diff --git a/src/main/java/com/bt/xlt/homework0305/ChenCaiYu.java b/src/main/java/com/bt/xlt/homework0305/ChenCaiYu.java new file mode 100644 index 0000000..ff623df --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0305/ChenCaiYu.java @@ -0,0 +1,22 @@ +package com.bt.xlt.homework0305; + +/** + * Created by little_5 on 2016/3/8. + * 作业: + * 请编写一个程序,接收用户输入的三个数,判断是否可以组成三角形(两条边相加大于第三条边)。 + * + * Reviewer: beigui + * Review Date: 2016/3/8 + */ +public class ChenCaiYu { + public static void main(String[] args){ + int a = Integer.parseInt(args[0]); + int b = Integer.parseInt(args[1]); + int c = Integer.parseInt(args[2]); + if(a + b > c && a + c > b && b + c > a){ + System.out.println(a + " " + b + " " + c + "可以组成三角形"); + }else{ + System.out.println(a + " " + b + " " + c + "不能组成三角形"); + } + } +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0305/FangWeiLi.java b/src/main/java/com/bt/xlt/homework0305/FangWeiLi.java new file mode 100644 index 0000000..ae8f259 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0305/FangWeiLi.java @@ -0,0 +1,28 @@ +package com.bt.xlt.homework0305; + +/** + * Created by Administrator on 2016/3/5. + * + * + * 作业: + * 请编写一个程序,接收用户输入的三个数,判断是否可以组成三角形(两条边相加大于第三条边)。 + * + * Reviewer: beigui + * Review Date: 2016/3/8 + */ + +public class FangWeiLi { + public static void main(String[] args) { + + double line = Double.parseDouble(args[0]); + double line1 = Double.parseDouble(args[1]); + double line2= Double.parseDouble(args[2]); + + System.out.println("录入的三个数分别是:"+line+"、"+line1+"、"+line2); + if (line+line1>line2 && line+line2>line1 && line1+line2>line){ + System.out.println("可以组成三角形"); + }else { + System.out.println("不能组成三角形"); + } + } +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0305/FangXu.java b/src/main/java/com/bt/xlt/homework0305/FangXu.java new file mode 100644 index 0000000..fd30d03 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0305/FangXu.java @@ -0,0 +1,36 @@ +package com.bt.xlt.homework0305; + +/** + * Created by Administrator on 2016/3/5. + * Reviewer: beigui + * Review Date: 2016/3/10 + * Comments: 能考虑到一些异常情况,并扩展了作业的潜在需求 + */ +public class FangXu +{ + public static void main(String[] args) + { + int a = Integer.parseInt(args[0]); + int b = Integer.parseInt(args[1]); + int c = Integer.parseInt(args[2]); + + if (a>0 && b>0 && c>0) { + System.out.println("您输入的三角形三边长分别为:" + a + "," + b + "," + c); + if (a+b<=c || a+c<=b || b+c<=a) { + System.out.println("错误!不能构成三角形。"); + } + else if ((a==b && a!=c) || (a==c && a!=b) || (b==c && b!=a)){ + System.out.println("为等腰三角形"); + } + else if (a==b && b==c) { + System.out.println("为等边三角形"); + } + else { + System.out.println("为普通三角形"); + } + } + else + System.out.println("错误!三角形三边不能小于等于零。"); + } +} + diff --git a/src/main/java/com/bt/xlt/homework0305/GuoLeiMing.java b/src/main/java/com/bt/xlt/homework0305/GuoLeiMing.java new file mode 100644 index 0000000..7189948 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0305/GuoLeiMing.java @@ -0,0 +1,23 @@ +package com.bt.xlt.homework0305; + +/** + * Reviewer: beigui + * Review Date: 2016/3/13 + */ +public class GuoLeiMing { + public static void main(String[] agrs) { + + int a = Integer.parseInt(agrs[0]); + int b = Integer.parseInt(agrs[0]); + int c = Integer.parseInt(agrs[0]); + System.out.println("第一个边长" + a); + System.out.println("第二个边长" + b); + System.out.println("第三个边长" + c); + + if ((a + b) > c && (a + c) > b && (c + b) > a) { + System.out.println("可以组成三角形"); + } else { + System.out.println("不能组成三角形"); + } + } +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0305/JiChenGuang.java b/src/main/java/com/bt/xlt/homework0305/JiChenGuang.java new file mode 100644 index 0000000..52b2c65 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0305/JiChenGuang.java @@ -0,0 +1,37 @@ +package com.bt.xlt.homework0305; + +/** + * Created by 700sfriend on 16/3/8. + * + * Reviewer: beigui + * Review Date: 2016/3/8 + * Comments: 提交的正式版本中不要加TODO,注意代码规范 + */ + +public class JiChenGuang { + + public static void main(String[] args) { + // TODO Auto-generated method stub + +// int a = 0; +// int b = 0; +// int c = 0; + System.out.println("请输入三个数字:"); + int a = Integer.parseInt(args[0]); + int b = Integer.parseInt(args[1]); + int c = Integer.parseInt(args[2]); + + System.out.println("输入的第一个数字是:" + a); + System.out.println("输入的第二个数字是:" + b); + System.out.println("输入的第三个数字是:" + c); + int r=a+b-c; + int w=a+c-b; + int x=b+c-a; + if(r>0&&w>0&&x>0) { + System.out.println("两边之和大于第三边,是三角形"); + }else{ + System.out.println("不是三角形"); + } + } + +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0305/JiYaPingHomework_operator.java b/src/main/java/com/bt/xlt/homework0305/JiYaPingHomework_operator.java new file mode 100644 index 0000000..e6aec2f --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0305/JiYaPingHomework_operator.java @@ -0,0 +1,54 @@ +package com.bt.xlt.homework0305;/* +思路:1、要可以输入三个数并保存; + 2、if语句去判断条件,两边之和大于第三边,符合是三角形,否则就不是三角形 +*/ +/** + * Reviewer: beigui + * Review Date: 2016/3/6 + * Comments: 用了不同的用户输入方式,很好 + * TODO 注意逻辑与和按位与的区别 + */ + +import java.util.Scanner; +public class JiYaPingHomework_operator { + public static void main (String [] args){ + logicalVSBit(); + Scanner sc =new Scanner(System.in); + System.out.println("输入第一个数"); + int a =sc.nextInt(); + System.out.println("输入第二个数"); + int b =sc.nextInt(); + System.out.println("输入第三个数"); + int c =sc.nextInt(); + if ((a+b)>c &(a+c) > b &(b+c)>a) + { + System.out.println(" 输入的是三角形"); + }else { + System.out.println("输入的不是三角形"); + } + + } + + /** + * && 逻辑与 vs & 按位与 + * 一般用逻辑与&&就好 + * && 逻辑与也称作短路连接,第一个条件不满足则不再继续下一个条件的判断,直接判定整个表达式为false + */ + private static void logicalVSBit() { + //&&只要第一个条件是false,就不会去执行第2个条件 + //但&不管第一个条件是不是false,都会执行第2个条件遇到这样的情况,结果就会不一样了 + int i = 1; + int j = 1; + if ((i++ < 0) & (j++ > 0)){ + + } + System.out.println("按位与之后j=" + j); + + i = 1; + j = 1; + if ((i++ < 0) && (j++ > 0)){ + + } + System.out.println("逻辑与之后j=" + j); + } +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0305/LiChangXin.java b/src/main/java/com/bt/xlt/homework0305/LiChangXin.java new file mode 100644 index 0000000..9db1128 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0305/LiChangXin.java @@ -0,0 +1,45 @@ +package com.bt.xlt.homework0305; + +/** + * Created by kevin on 2016/3/6. + * Reviewer: beigui + * Review Date: 2016/3/6 + * Comments: 能考虑到一些异常情况,并扩展了作业的潜在需求 + * TODO 请注意写代码的规范,这是协作编程时的重点。少一个输出,“三边不能组成三角形” + */ +public class LiChangXin { + + public static void main(String [] args) + { + int a = Integer.parseInt(args[0]); + int b = Integer.parseInt(args[1]); + int c = Integer.parseInt(args[2]); + + System.out.println("您输入的三个数是:" + a + " "+ b + " " + c); + + if(a<0 ||b<0||c<0) + + { + System.out.println("三角形三边必须是正数!!!"); + }else if( a+b>c&&c-bc&&(a+c)>b&&(c+b)>a){ + System.out.println("可以组成一个三角形"); + } + else{ + System.out.println("不能组成一个三角形"); + } + } +} diff --git a/src/main/java/com/bt/xlt/homework0305/LiWenHomework_operator.java b/src/main/java/com/bt/xlt/homework0305/LiWenHomework_operator.java new file mode 100644 index 0000000..7eff452 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0305/LiWenHomework_operator.java @@ -0,0 +1,43 @@ +package com.bt.xlt.homework0305; + +/** + * Created by wen.li on 16/3/5. + * 作业: + * 请编写一个程序,接收用户输入的三个数,判断是否可以组成三角形(两条边相加大于第三条边)。 + * + * Reviewer: beigui + * Review Date: 2016/3/7 + * Comments: 能检查输入参数个数,很好。 + */ +public class LiWenHomework_operator { + + public static void main(String[] args){ + + int len = args.length; + + if (len < 3 || len > 3){ + + System.out.println("用户输入边数值大于或者小于3个数"); + + }else { + + float a =Float.parseFloat(args[0]); + float b =Float.parseFloat(args[1]); + float c =Float.parseFloat(args[2]); + + System.out.println("a = "+ a + ", b = " + b + ", c = " + c); + + if (a > 0 && b > 0 && c > 0){ + if (a + b > c && a + c > b && b + c > a){ + System.out.println("ok"); + }else{ + System.out.println("false"); + } + }else{ + System.out.println("false , 三条边长度有一个或多个小于等于0"); + } + } + } +} + + diff --git a/src/main/java/com/bt/xlt/homework0305/MaXiaoYu.java b/src/main/java/com/bt/xlt/homework0305/MaXiaoYu.java new file mode 100644 index 0000000..33be409 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0305/MaXiaoYu.java @@ -0,0 +1,24 @@ +package com.bt.xlt.homework0305; + +/** + * Created by lenovo on 2016/3/7. + * Reviewer: beigui + * Review Date: 2016/3/7 + * Comments: 跟别人不同的思路,思路开阔。 + */ +public class MaXiaoYu { + public static void main(String[] args) { + int a = Integer.parseInt(args[0]); + int b = Integer.parseInt(args[1]); + int c = Integer.parseInt(args[2]); + System.out.println("请输入三个整数:"); + System.out.println(a + "," + b + "," + c); + int p = (Math.abs(a-b-c)-(a-b-c))*(Math.abs(b-a-c)-(b-a-c))*(Math.abs(c-a-b)-(c-a-b)); + switch (p){ + case 0: + System.out.print("不"); + break; + } + System.out.println("可以构成三角形"); + } +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0305/QiZhiTriangle.java b/src/main/java/com/bt/xlt/homework0305/QiZhiTriangle.java new file mode 100644 index 0000000..c8ea7ed --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0305/QiZhiTriangle.java @@ -0,0 +1,22 @@ +package com.bt.xlt.homework0305; + +/** + * Created by QZ on 2016/3/6. + * Reviewer: beigui + * Review Date: 2016/3/6 + * Comments: 注意代码规范 + */ +public class QiZhiTriangle { + public static void main(String[] args) { + int a = Integer.parseInt(args[0]); + int b = Integer.parseInt(args[1]); + int c = Integer.parseInt(args[2]); + + System.out.println("输入的三边之长分别是 a=" + a + ",b=" + b +",c=" + c); + if(a + b> c && a + c > b && c + b > a){ + System.out.println("可以组成三角形"); + } + else System.out.println("不符合三角形组成条件,所以不能组成三角形"); + + } +} diff --git a/src/main/java/com/bt/xlt/homework0305/RecomException.java b/src/main/java/com/bt/xlt/homework0305/RecomException.java new file mode 100644 index 0000000..cd85f5d --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0305/RecomException.java @@ -0,0 +1,10 @@ +package com.bt.xlt.homework0305; + +//自定义一个异常 +public class RecomException extends Exception{ + + public RecomException( String massage) { + super(massage); + } + +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0305/WangXiaoJia.java b/src/main/java/com/bt/xlt/homework0305/WangXiaoJia.java new file mode 100644 index 0000000..6a6d1f7 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0305/WangXiaoJia.java @@ -0,0 +1,26 @@ +package com.bt.xlt.homework0305; + +/** + * Created by 王小佳 on 2016/3/7. + * Reviewer: beigui + * Review Date: 2016/3/8 + */ +public class WangXiaoJia { + public static void main(String[] args) { + int a=Integer.parseInt(args[0]); //把字符型强制转换成int,数组里的0,1,2,依次对应相应的变量 + System.out.println("您输入的边是:"+a); + int b=Integer.parseInt(args[1]); + System.out.println("您输入的边是:"+b); + int c=Integer.parseInt(args[2]); + System.out.println("您输入的边是:"+c); + if(a<=0||b<=0||c<=0){ + System.out.println("不符合边的要求"); + } + else if((a+b>c) && (a+c>b)&&(b+c>a)) { + System.out.println("三条边能组成三角形"); + } + else{ + System.out.println("三条边不能组成三角形"); + } + } +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0305/WeiYuXinHomeWorkTest.java b/src/main/java/com/bt/xlt/homework0305/WeiYuXinHomeWorkTest.java new file mode 100644 index 0000000..ebe0acd --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0305/WeiYuXinHomeWorkTest.java @@ -0,0 +1,39 @@ +package com.bt.xlt.homework0305; + +/** + * Created by yuxinwei on 2016/3/6. + * 输入三个数判断是否为三角形: + * 1、两边之和大于第三边 + * 2、输入限制:不能输入非法字符、不能小于等于0、可以为浮点型 + * 3、类型:等腰、等边、普通三角形 + * + * Reviewer: beigui + * Review Date: 2016/3/7 + * Commonts: 能够深层挖掘需求,很好。 + * TODO 注意else if的用法 + */ +public class WeiYuXinHomeWorkTest { + public static void main(String[] args) { + int length1=Integer.parseInt(args[0]); + int length2=Integer.parseInt(args[1]); + int length3=Integer.parseInt(args[2]); + System.out.println("您输入的三个数分别为 : "+length1+" ,"+length2+" ,"+length3); + if(length1>0 && length2>0 && length3>0){ + if((length1+length2>length3) && (length1+length3>length2) && (length2+length3>length1)) { + if ((length1 == length2 && length1 != length3) || (length1 == length3 && length1 != length2) || (length2 == length3 && length1 != length2)) { + System.out.println("可以组成三角形,此三角形为等腰三角形"); + } + if ((length1 == length2) && length1 == length3) { + System.out.println("可以组成三角形,此三角形为等边三角形"); + } + if ((length1 != length2 && length1 != length3 && length2 != length3)) { + System.out.println("可以组成三角形,此三角形为普通三角形"); + } + }else{ + System.out.println("无法构成三角形"); + } + }else{ + System.out.println("无法构成三角形"); + } + } +} diff --git a/src/main/java/com/bt/xlt/homework0305/Xiaoma.java b/src/main/java/com/bt/xlt/homework0305/Xiaoma.java new file mode 100644 index 0000000..c8f359e --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0305/Xiaoma.java @@ -0,0 +1,39 @@ +package com.bt.xlt.homework0305; + +/** + * Reviewer: beigui + * Review Date: 2016/3/6 + * Comments: 能考虑到一些异常情况,有一定的代码基础 + */ + +public class XiaoMa { + + public static void main(String[] args) { + int x = Integer.parseInt(args[0]); + int y = Integer.parseInt(args[1]); + int z = Integer.parseInt(args[2]); + + XiaoMa xm = new XiaoMa(); + + try { + xm.Show(x, y, z); + } catch (RecomException e) { + + System.out.println(e.getMessage()); + + } + } + + private void Show(int a ,int b,int c) throws RecomException { + + if (a<=0||b<=0||c<=0) { + throw new RecomException("请输入正整数:"); + } + + if ((a+b)>c&&(a+c)>b&&(b+c)>a) { + System.out.println("这是一个三角形"); + }else{ + System.out.println("这不是一个三角形"); + } + } +} diff --git a/src/main/java/com/bt/xlt/homework0305/XueGuiYang.java b/src/main/java/com/bt/xlt/homework0305/XueGuiYang.java new file mode 100644 index 0000000..e5dc43b --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0305/XueGuiYang.java @@ -0,0 +1,31 @@ +package com.bt.xlt.homework0305; + +/** + * Reviewer: beigui + * Review Date: 2016/3/6 + * Comments: 用了不同的用户输入方式,能考虑到三角形的边长可以是非整数,很好 + * TODO 请注意写代码的规范,提交作业的正式版本中去掉todo,因为todo意味着你有未完成的东西,不符合规范 + */ + +import java.util.Scanner; + +public class XueGuiYang { + + /** + * @param args + */ + public static void main(String[] args) { + // TODO Auto-generated method stub + Scanner in=new Scanner(System.in); + double a=in.nextDouble();//这是输入a + double b=in.nextDouble(); + double c=in.nextDouble(); + if (a+b>c&&a+c>b&&b+c>a) { + System.out.println("这是个三角形"); + } else { + System.out.println("这不是个三角形"); + } + } + + + } \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0305/ZhaoJieCheckTriangle.java b/src/main/java/com/bt/xlt/homework0305/ZhaoJieCheckTriangle.java new file mode 100644 index 0000000..1c6565e --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0305/ZhaoJieCheckTriangle.java @@ -0,0 +1,36 @@ +package com.bt.xlt.homework0305; + +/** + * 第一次作业:三角形判断:两边之和大于第三边;等腰、等边、直角等; + * Created by Jay on 2016/3/10. + * + * Reviewer: beigui + * Review Date: 2016/3/11 + * Comments: 遵守编码规范,程序考虑比较周到 + */ +public class ZhaoJieCheckTriangle { + public static void main(String[] args) { + int a = Integer.parseInt(args[0]); + int b = Integer.parseInt(args[1]); + int c = Integer.parseInt(args[2]); + System.out.println("您输入的三个边分别是:" + a + " " + b + " " + c); + if (a > 0 && b > 0 && c > 0) { + if (a + b > c || a + c > b || b + c > a) { + if (a == b && b == c) { + System.out.println("这三个边组成的是等边三角形"); + } else if (a == b || b == c || a == c) { + System.out.println("这三个边组成的是等腰三角形"); + } else if (a*a == b*b + c*c || b*b == a*a + c*c || c*c == a*a + b*b){ + System.out.println("这三个边组成的是直角三角形"); + } + else { + System.out.println("这三个边组成的是普通三角形"); + } + } else { + System.out.println("这三个边不能构成三角形"); + } + } else { + System.out.println("这三个边长度不能小于零"); + } + } +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0305/jiabinPanDuanSanJiaoXing.java b/src/main/java/com/bt/xlt/homework0305/jiabinPanDuanSanJiaoXing.java new file mode 100644 index 0000000..0fc428b --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0305/jiabinPanDuanSanJiaoXing.java @@ -0,0 +1,35 @@ +package com.bt.xlt.homework0305; + +import java.util.Scanner; + +/** + * Created by binjia on 2016/3/5. + * Reviewer: beigui + * Review Date: 2016/3/6 + * Comments: 能考虑到一些异常情况,并用了不同的用户输入方式,能考虑到三角形的边长可以是非整数,很好 + */ +public class JiaBinPanDuanSanJiaoXing { + + public static void main(String[] args) { + + Scanner sc = new Scanner(System.in); + System.out.println("请输入三个正数:"); + + try{ + Float a = sc.nextFloat(); + Float b = sc.nextFloat(); + Float c = sc.nextFloat(); + if (a<=0 || b<=0 || c<=0){ + System.out.println("请输入正数!"); + }else if(((a+b)>c) && (a+c)>b && (b+c)>a){ + System.out.println("a,b,c可以构成三角形"); + }else{ + System.out.println("a,b,c不可以构成三角形"); + } + }catch (Exception e){ + System.out.println("请输入正数!"); + } + + } + +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0305/mijuanHomeworkOperator.java b/src/main/java/com/bt/xlt/homework0305/mijuanHomeworkOperator.java new file mode 100644 index 0000000..e95f589 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0305/mijuanHomeworkOperator.java @@ -0,0 +1,34 @@ +package com.bt.xlt.homework0305; + +/** + * Created by mijua on 3/5/2016. + * Reviewer: beigui + * Review Date: 2016/3/5 + * Comments: 能考虑到一些异常情况,并扩展了作业的潜在需求 + * TODO 请注意写代码的规范,这是协作编程时的重点。 + */ +public class MiJuanHomeworkOperator { + public static void main(String[] args){ + int a = Integer.parseInt(args[0]); + int b = Integer.parseInt(args[1]); + int c = Integer.parseInt(args[2]); + + System.out.println("您输入的三角形第一条边长度为:" + a); + System.out.println("您输入的三角形第二条边长度为:" + b); + System.out.println("您输入的三角形第三条边长度为:" + c); + + if(a <= 0 || b <= 0 || c <=0) + { + System.out.println("您输入的三角形长度有误,请重新输入!"); + return; + } + if (a==b&&b==c) + {System.out.println("您输入的是等边三角形");} + else if(a==b || a==c || b ==c ) + {System.out.println("您输入的是等腰三角形");} + else if (a+b>c&&a+c>b&&b+c>a) + {System.out.println("您输入的是普通三角形");} + else + {System.out.println("您输入的三条边不能组成三角形");} + } +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0312/computer/ChenCaiYuComputer.java b/src/main/java/com/bt/xlt/homework0312/computer/ChenCaiYuComputer.java new file mode 100644 index 0000000..eeb3c2e --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/ChenCaiYuComputer.java @@ -0,0 +1,55 @@ +package com.bt.xlt.homework0312.computer; + +/** + * Created by little_5 on 2016/3/16. + * 计算机类 设计一个计算机类,要求如下: -- 属性:品牌、颜色、cpu、内存容量、价格、工作状态 + 方法:打开、关闭、休眠 -- 创建一个计算机对象,调用打开、关闭方法。 + 打开时显示品牌、颜色、cpu、内存容量、价格、工作状态为正常; + 关闭时,显示工作状态为停止; -- 休眠时,显示工作状态为睡眠。 + * Reviewer: beigui + * Review Date: 2016/3/18 + * Comments: 也可以通过构造函数赋初值,这样更省力。 + */ +public class ChenCaiYuComputer { + String brand; + String color; + String cpu; + String memoryCapacity; + double price; + String workCondition; + + public static void main (String[] args) { + ChenCaiYuComputer c = new ChenCaiYuComputer(); + c.brand = "联想"; + c.color = "黑色"; + c.cpu = "i7-5500U"; + c.memoryCapacity = "8GB"; + c.price = 5199; + c.boot(); + c.shutdown(); + c.sleep(); + } + + public void boot () { + workCondition = "正常"; + System.out.println("打开时显示:"); + System.out.println("品牌:" + brand); + System.out.println("颜色:" + color); + System.out.println("CPU:" + cpu); + System.out.println("内存容量:" + memoryCapacity); + System.out.println("价格:" + price); + System.out.println("工作状态:" + workCondition); + } + + public void shutdown () { + workCondition = "停止"; + System.out.println("关闭时显示:"); + System.out.println("工作状态:" + workCondition); + } + + public void sleep () { + workCondition = "睡眠"; + System.out.println("休眠时显示:"); + System.out.println("工作状态:" + workCondition); + } +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0312/computer/FangWeiLiComputer.java b/src/main/java/com/bt/xlt/homework0312/computer/FangWeiLiComputer.java new file mode 100644 index 0000000..324b7e7 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/FangWeiLiComputer.java @@ -0,0 +1,49 @@ +package com.bt.xlt.homework0312.computer; + +/** + * Created by FangWeiLi on 2016/3/16. + * 作业:设计一个计算机类,要求如下: + 属性:品 牌、颜色、cpu、内存容量、价格、工作状态 + 方法:打开、关闭、休眠 + 创建一个计算机对象,调用打开、关闭方法。 -- 打开时显示品牌、颜色、cpu、内存容量、价格、工作 + 状态为正常; -- 关闭时,显示工作状态为停止; -- 休眠时,显示工作状态为睡眠。 + * Reviewer: beigui + * Review Date: 2016/3/16 + * Comments: open等方法不需要整个对象作为参数。更好的方式是把状态属性开放,通过改变这个属性,检测并使用。而不会以整个对象作为参数 + * 这个也不是一个不变的规则。只是在这里更实用些。慢慢体会。 + */ +public class FangWeiLiComputer { + String brand; + String colour; + String cpu; + double memory; + double price; + String state; + FangWeiLiComputer(){ + + } + FangWeiLiComputer(String brand , String colour , String cpu , double memory , double price , String state){ + this.brand = brand; + this.colour = colour; + this.cpu = cpu; + this.memory = memory; + this.price = price; + this.state = state; + } + public void Open(FangWeiLiComputer computer){ + System.out.println("该电脑的品牌为:" + computer.brand + ";颜色是:" +computer.colour+ + ";cpu为:" +computer.cpu +";内存容量为:"+computer.memory+ + ";价格是:"+computer.price+ ";工作状态是:"+computer.state); + } + + public void Close(FangWeiLiComputer computer){ + computer.state = "停止"; + System.out.println("该电脑的工作状态是:" + computer.state); + + } + + public void Sleep(FangWeiLiComputer computer){ + computer.state = "休眠,"; + System.out.println("该电脑的工作状态是:" + computer.state); + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/computer/FangWeiLiComputerObject.java b/src/main/java/com/bt/xlt/homework0312/computer/FangWeiLiComputerObject.java new file mode 100644 index 0000000..474d753 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/FangWeiLiComputerObject.java @@ -0,0 +1,14 @@ +package com.bt.xlt.homework0312.computer; + +/** + * Created by FangWeiLi on 2016/3/16. + */ +public class FangWeiLiComputerObject { + public static void main(String[] args) { + FangWeiLiComputer computer = new FangWeiLiComputer("联想","黑色","因特尔",4,1346,"正常运行"); + //调用打开方法 + computer.Open(computer); + computer.Close(computer); + computer.Sleep(computer); + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/computer/Fangxu_MyComputer.java b/src/main/java/com/bt/xlt/homework0312/computer/Fangxu_MyComputer.java new file mode 100644 index 0000000..5aa8c1a --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/Fangxu_MyComputer.java @@ -0,0 +1,35 @@ +package com.bt.xlt.homework0312.computer; +/** + * Created by fx on 2016/3/16. + * Reviewer: beigui + * Review Date: 2016/3/20 + * Comments: 能想到与用户互动,不错。 + * 改进点:属性赋值用构造函数更省力 + */ +import java.util.Scanner; +public class Fangxu_MyComputer { + + public static void main(String[] args) { + Fangxu_computer my = new Fangxu_computer(); + my.brand = "联想"; + my.color = "黑色"; + my.cpu = "core i7-6700"; + my.memory = "8G"; + my.price = 5999; + + System.out.println("输入电脑运行状态(关机:0 ;开机:1 ;休眠:2;):"); + + Scanner s = new Scanner(System.in); + int status = s.nextInt(); + + if (status == 0) { + my.off(); + } else if (status == 1) { + my.open(); + } else if (status == 2) { + my.sleep(); + } else { + System.out.println("没有该状态"); + } + } +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0312/computer/Fangxu_computer.java b/src/main/java/com/bt/xlt/homework0312/computer/Fangxu_computer.java new file mode 100644 index 0000000..3ae9a33 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/Fangxu_computer.java @@ -0,0 +1,24 @@ +package com.bt.xlt.homework0312.computer; + +/** + * Created by fx on 2016/3/17. + */ +class Fangxu_computer { + String brand; + String color; + String cpu; + String memory; + int price; + + + public void open() { + System.out.println(brand +"\n" +color +"\n" +cpu +"\n" +memory +"\n"+price +"元" +"\n"+"状态:正常"); + } + public void off(){ + System.out.println("状态:关机"); + } + public void sleep() { + System.out.println("状态:休眠"); + } + +} diff --git a/src/main/java/com/bt/xlt/homework0312/computer/JiaBinComputer.java b/src/main/java/com/bt/xlt/homework0312/computer/JiaBinComputer.java new file mode 100644 index 0000000..aa5d498 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/JiaBinComputer.java @@ -0,0 +1,34 @@ +package com.bt.xlt.homework0312.computer; + +/** + * Created by jiabin on 2016/3/12. + */ +public class JiaBinComputer { + String brand = "acer"; //品牌 + String color = "black"; //颜色 + String cpu = "Core i5"; //cpu + int memory = 4; //内存 + int price = 3500; //价格 + String status; //工作状态 + + public JiaBinComputer(String brand , String color , String cpu , int memory , int price){ + this.brand = brand; + this.color = color; + this.cpu = cpu; + this.memory = memory; + this.price = price; + } + + public void start(){ + status = "开机"; + System.out.printf("调用computer start()开机方法。品牌:" + brand + " 颜色:" + color + " cpu:" + cpu + " 内存:" + memory + " 价格:" + price + " 工作状态:" + status); + } + public void shutdown(){ + status = "关机"; + System.out.println("调用computer shutdown()关机方法。工作状态:" + status); + } + public void sleep(){ + status = "休眠"; + System.out.println("调用computer sleep()休眠方法。工作状态:" + status); + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/computer/JiaBinComputerTest.java b/src/main/java/com/bt/xlt/homework0312/computer/JiaBinComputerTest.java new file mode 100644 index 0000000..89c60a3 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/JiaBinComputerTest.java @@ -0,0 +1,22 @@ +package com.bt.xlt.homework0312.computer; + +/** + * Created by jiabin on 2016/3/12. + * Reviewer: beigui + * Review Date: 2016/3/13 + */ +public class JiaBinComputerTest { + public static void main(String[] args) { + JiaBinComputer computer = new JiaBinComputer("dell","red","Core i7",4,3550); + + computer.start(); + + System.out.println(); + + computer.shutdown(); + + System.out.printf(""); + + computer.sleep(); + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/computer/LiChangxingComputer.java b/src/main/java/com/bt/xlt/homework0312/computer/LiChangxingComputer.java new file mode 100644 index 0000000..335c492 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/LiChangxingComputer.java @@ -0,0 +1,44 @@ +package com.bt.xlt.homework0312.computer; + +/** + * Created by LiChangxing on 2016/3/14. + */ +public class LiChangxingComputer { + + String Brand; + String Colour; + String Cpu; + String Mem; + double Price; + String WorkingStatus; + + public LiChangxingComputer(String CBrand, String CColour, String CCpu, String CMem, double CPrice, String CWorkingStatus ){ + Brand = CBrand; + Colour = CColour; + Cpu = CCpu; + Mem = CMem; + Price = CPrice; + WorkingStatus = CWorkingStatus; + + } + + public String StarUp(){ + + return "目前该电脑为"+ Brand + "," + "颜色为" + Colour + "," + "cpu 为" + Cpu +"," + "内存为" + Mem + "," + "价格为" + "," + Price + "," + "工作状态" + WorkingStatus; + + } + + public void ShutDown(String CWorkingStatus){ + + WorkingStatus = CWorkingStatus; + + System.out.println("该电脑已经" + WorkingStatus + "了"); + + } + + public void Sleep() { + + System.out.println("该电脑已经睡眠了"); + + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/computer/LiDongKunComputer.java b/src/main/java/com/bt/xlt/homework0312/computer/LiDongKunComputer.java new file mode 100644 index 0000000..84f3805 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/LiDongKunComputer.java @@ -0,0 +1,25 @@ +package com.bt.xlt.homework0312.computer; + +/** + * Created by lidongkun on 2016/3/14. + */ +public class LiDongKunComputer { + String brand = "联想"; + String color = "黑色"; + String cpu = "英特尔"; + String ram = "金士顿"; + String work = "正常"; + + public void open() { + System.out.println("我买了一个电脑品牌是:" + brand + "、颜色是:" + color + "、cpu是:" + cpu + + "、内存是:" + ram + "已经" + work + "工作了!"); + } + + public void close() { + System.out.println("我的电脑关机了所以" + work + "工作了!"); + } + + public void sleep() { + System.out.println("我的电脑一段时间不用就" + work + "了!"); + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/computer/LiDongKunComputerState.java b/src/main/java/com/bt/xlt/homework0312/computer/LiDongKunComputerState.java new file mode 100644 index 0000000..9246cc9 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/LiDongKunComputerState.java @@ -0,0 +1,20 @@ +package com.bt.xlt.homework0312.computer; + +/** + * Created by lidongkun on 2016/3/14. + * Reviewer: beigui + * Review Date: 2016/3/15 + * Comments: 考虑下带参数的构造函数 + */ +public class LiDongKunComputerState { + public static void main(String[] args) { + LiDongKunComputer cp=new LiDongKunComputer(); + cp.open(); + + cp.work = "停止"; + cp.close(); + + cp.work = "休眠"; + cp.sleep(); + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/computer/LiWenComputer.java b/src/main/java/com/bt/xlt/homework0312/computer/LiWenComputer.java new file mode 100644 index 0000000..641e821 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/LiWenComputer.java @@ -0,0 +1,44 @@ +package com.bt.xlt.homework0312.computer; + +/** + * Created by wen.li on 16/3/15. + * 计算机类 设计一个计算机类,要求如下: -- 属性:品 牌、颜色、cpu、内存容量、价格、工作状态 + * 方法:打开、关闭、休眠 -- 创建一个计算机对象,调用打开、关闭方法。 + * 打开时显示品牌、颜色、cpu、内存容量、价格、工作状态为正常; + * 关闭时,显示工作状态为停止; -- 休眠时,显示工作状态为睡眠。 + * Reviewer: beigui + * Review Date: 2016/3/16 + * Comments: 考虑下容量和价格的类型,字符串是万能的,但是在进行比较时,会比较弱 + */ +public class LiWenComputer { + String brand; + String color; + String cpu; + String memory; + String price; + String state; + + public LiWenComputer(String brand, String color, String cpu, String memory, String price) { + this.brand = brand; + this.color = color; + this.cpu = cpu; + this.memory = memory; + this.price = price; + + } + + public void open(){ + state = "工作状态正常"; + System.out.println("显示信息为:" + brand + "," + color + "," + cpu + "," + memory + "," + price + "," + state ); + } + + public void close(){ + state = "关机"; + System.out.println("工作状态为:" + state); + } + + public void sleep(){ + state = "睡眠"; + System.out.println("工作状态为:" + state); + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/computer/LiWenComputerTest.java b/src/main/java/com/bt/xlt/homework0312/computer/LiWenComputerTest.java new file mode 100644 index 0000000..b5b8a7f --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/LiWenComputerTest.java @@ -0,0 +1,13 @@ +package com.bt.xlt.homework0312.computer; + +/** + * Created by wen.li on 16/3/15. + */ +public class LiWenComputerTest { + public static void main(String[] args) { + LiWenComputer myPc = new LiWenComputer("MAC", "blue", "ADM", "8G", "3200"); + myPc.open(); + myPc.close(); + myPc.sleep(); + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/computer/LichangxingComputerDemo.java b/src/main/java/com/bt/xlt/homework0312/computer/LichangxingComputerDemo.java new file mode 100644 index 0000000..d7300c4 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/LichangxingComputerDemo.java @@ -0,0 +1,17 @@ +package com.bt.xlt.homework0312.computer; + +/** + * Created by LiChangxing on 2016/3/14. + * Reviewer: beigui + * Review Date: 2016/3/16 + */ +public class LichangxingComputerDemo { + public static void main(String[] args) { + LiChangxingComputer Com = new LiChangxingComputer("Dell","黑色", "Intel","4096M", 5800.5,"开机"); + System.out.println(Com.StarUp()); + + Com.ShutDown("关机"); + Com.Sleep(); + + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/computer/MaXiaoYuClassDemo.java b/src/main/java/com/bt/xlt/homework0312/computer/MaXiaoYuClassDemo.java new file mode 100644 index 0000000..93aeec2 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/MaXiaoYuClassDemo.java @@ -0,0 +1,26 @@ +package com.bt.xlt.homework0312.computer; + +/** + * Created by Xiaoyu on 2016/3/14. + */ +public class MaXiaoYuClassDemo { + public static void main( String[] args ) { + + /** 创建对象 */ + MaXiaoYuComputer computer1 = new MaXiaoYuComputer( "联想", "黑色", "i5", "8G", "CNY4500" ); + + /** 对象调用打开方法 */ + System.out.print( "打开电脑| " ); + computer1.Open(); + + + /** 对象调用关闭方法 */ + System.out.print( "关闭电脑| " ); + computer1.Close(); + + /** 对象调用休眠方法 */ + System.out.print( "休眠电脑| " ); + computer1.Sleep(); + + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/computer/MaXiaoYuComputer.java b/src/main/java/com/bt/xlt/homework0312/computer/MaXiaoYuComputer.java new file mode 100644 index 0000000..949e1ef --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/MaXiaoYuComputer.java @@ -0,0 +1,48 @@ +package com.bt.xlt.homework0312.computer; + +/** + * Created by Xiaoyu on 2016/3/14. + * Reviewer: beigui + * Review Date: 2016/3/15 + * Comments: 考虑下容量和价格的类型,字符串是万能的,但是在进行比较时,会比较弱 + * 方法名第一个字母小写 + */ +public class MaXiaoYuComputer { + + /** 定义类属性 */ + String grand; + String color; + String cpu; + String memory; + String price; + String state; + + /** 定义构造函数 */ + MaXiaoYuComputer( String grand1, String color1, String cpu1, String memory1, String price1 ) { + grand = grand1; + color = color1; + cpu = cpu1; + memory = memory1; + price = price1; + } + + /** 定义类方法:打开 */ + void Open() { + state = "正常"; + System.out.println ( "品牌:" + grand + ",颜色:" + color + ",cpu:" + cpu + ",内存:" + + memory + ",价格:" + price + "| " + "电脑工作状态:" + state ); + } + + /** 定义类方法:关闭 */ + void Close() { + state = "停止"; + System.out.println( "电脑工作状态:" + state ); + } + + /** 定义类方法:休眠 */ + void Sleep() { + state = "睡眠"; + System.out.println( "电脑工作状态:" + state ); + } + +} diff --git a/src/main/java/com/bt/xlt/homework0312/computer/QiZhiComputer.java b/src/main/java/com/bt/xlt/homework0312/computer/QiZhiComputer.java new file mode 100644 index 0000000..80e84c2 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/QiZhiComputer.java @@ -0,0 +1,156 @@ +package com.bt.xlt.homework0312.computer; + +/** + * Created by QZ on 2016/3/16. + * 设计一个计算机类 + * 属性:品牌、颜色、cpu、内存容量、价格、工作状态 + * 方法: + * 打开:打开时显示品牌、颜色、cpu、内存容量、价格、工作状态为正常; + * 关闭:关闭时,显示工作状态为停止; + * 休眠:休眠时,显示工作状态为睡眠。 + * Reviewer: beigui + * Review Date: 2016/3/18 + * Comments: 整体不错 + * super的作用,无参数构造函数需不需要写,StringBuffer的作用及使用场景 + */ +public class QiZhiComputer { + /** 品牌 */ + private String brand; + /** 颜色 */ + private String color; + /** cpu */ + private String cpu; + /** 内存容量 */ + private String memory; + /** 价格 */ + private double price; + /** 工作状态 */ + private String status; + + /** + * 无参数构造方法 + */ + public QiZhiComputer() { + super(); + } + + /** + * 有参数构造方法 + * @param brand + * @param color + * @param cpu + * @param memory + * @param price + */ + public QiZhiComputer(String brand, String color, String cpu, String memory, double price) { + super(); + this.brand = brand; + this.color = color; + this.cpu = cpu; + this.memory = memory; + this.price = price; + } + + /** + * 打开计算机 + * @return + */ + public String open(){ + this.setStatus("正常"); + StringBuffer sb = new StringBuffer(); + sb.append("品牌:"); + sb.append(this.getBrand()); + sb.append(", "); + sb.append("颜色:"); + sb.append(this.getColor()); + sb.append(", "); + sb.append("cpu:"); + sb.append(this.getCpu()); + sb.append(", "); + sb.append("内存:"); + sb.append(this.getMemory()); + sb.append(", "); + sb.append("价格:"); + sb.append(this.getPrice()); + sb.append(", "); + sb.append("状态:"); + sb.append(this.getStatus()); + sb.append("。"); + return sb.toString(); + } + + /** + * 关闭计算机 + * @return + */ + public String shutdown(){ + this.setStatus("关闭"); + StringBuffer sb = new StringBuffer(); + sb.append("状态:"); + sb.append(this.getStatus()); + sb.append("。"); + return sb.toString(); + } + + /** + * 休眠计算机 + * @return + */ + public String sleep(){ + this.setStatus("休眠"); + StringBuffer sb = new StringBuffer(); + sb.append("状态:"); + sb.append(this.getStatus()); + sb.append("。"); + return sb.toString(); + } + + public String getBrand() { + return brand; + } + + public void setBrand(String brand) { + this.brand = brand; + } + + public String getColor() { + return color; + } + + public void setColor(String color) { + this.color = color; + } + + public String getCpu() { + return cpu; + } + + public void setCpu(String cpu) { + this.cpu = cpu; + } + + public String getMemory() { + return memory; + } + + public void setMemory(String memory) { + this.memory = memory; + } + + public double getPrice() { + return price; + } + + public void setPrice(double price) { + this.price = price; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + +} diff --git a/src/main/java/com/bt/xlt/homework0312/computer/QiZhiComputerTest.java b/src/main/java/com/bt/xlt/homework0312/computer/QiZhiComputerTest.java new file mode 100644 index 0000000..613c49e --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/QiZhiComputerTest.java @@ -0,0 +1,20 @@ +package com.bt.xlt.homework0312.computer; + +/** + * Created by QZ on 2016/3/16. + * + */ +public class QiZhiComputerTest { + public static void main(String[] args) { + QiZhiComputer computer = new QiZhiComputer("ThinkPad", "Black", "I5-2420", "8G", 8888); + // 开机 + String openMsg = computer.open(); + System.out.println("开机:" + openMsg); + // 休眠 + String sleepMsg = computer.sleep(); + System.out.println("休眠:" + sleepMsg); + // 关机 + String shutdownMsg = computer.shutdown(); + System.out.println("关机:" + shutdownMsg); + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/computer/WangXiaoJiaComputer.java b/src/main/java/com/bt/xlt/homework0312/computer/WangXiaoJiaComputer.java new file mode 100644 index 0000000..bf8814e --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/WangXiaoJiaComputer.java @@ -0,0 +1,73 @@ +package com.bt.xlt.homework0312.computer; + +/** + * 作业:设计一个计算机类,要求如下: + 属性:品 牌、颜色、cpu、内存容量、价格、工作状态 + 方法:打开、关闭、休眠 + 创建一个计算机对象,调用打开、关闭方法。 -- 打开时显示品牌、颜色、cpu、内存容量、价格、工作 + 状态为正常; -- 关闭时,显示工作状态为停止; -- 休眠时,显示工作状态为睡眠。 + * Created by 王小佳 on 2016/3/16. + * Reviewer: beigui + * Review Date: 2016/3/18 + * Comments: 抄的时候希望把不符合需求的内容删除掉 + */ +public class WangXiaoJiaComputer { + + String brand; + String color; + String memory ; + String cpu ; + double price ; + String state; + int count; + //定义成员变量,是全局变量 + + public WangXiaoJiaComputer( String brand,String color,String memory,String cpu,double price){ + this.brand = brand; + this.color = color; + this.memory = memory; + this.cpu = cpu; + this.price = price; + } + //构造方法 + + /*public void click() { + count = count+1; + switch (count) { + case 1:state = "早上";break; + case 2:state = "中午";break; + case 3:state = "下午";break; + case 4:state = "晚上";break; + } + System.out.println("点击次数:"+count); + System.out.println("状态:"+state); + }*/ + + public static void main(String[] args) { + WangXiaoJiaComputer cp = new WangXiaoJiaComputer("Thinkpad","balck","4.0G","intel",2000.0); + //创建对象并赋值 + cp.open(); + //调用方法 + //cp.click(); + cp.state="早上"; + //赋值的另外一种方法 + //cp.click(); + //cp.click(); + cp.close(); + } + // 注意:字符串之间的拼接:用“+”,注意不要出现逗号之类的,如果出现都需要加“” + //成员方法 + + public void open(){ + System.out.println("品牌:" + this.brand +",颜色:" + this.color+",内存:"+ this.memory+",CPU:"+this.cpu+",价格:"+ this.price); + } + + public void close(){ + System.out.println("电脑的状态是:"+state); + // System.out.println("点击次数是:"+count); + } + + public void sleep(){ + System.out.println("电脑状态是:"+state); + } + } \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0312/computer/WeiYuXinComputerDemo.java b/src/main/java/com/bt/xlt/homework0312/computer/WeiYuXinComputerDemo.java new file mode 100644 index 0000000..46d6c98 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/WeiYuXinComputerDemo.java @@ -0,0 +1,46 @@ +package com.bt.xlt.homework0312.computer; + +/** + * Created by yuxinwei on 2016/3/14. + * 功能:创建一个计算机类,有属性,打开、关闭、睡眠方法,创建一个计算机对象,调用分别打开、关闭、休眠方法 + * Reviewer: beigui + * Review Date: 2016/3/14 + * Comments: 对this的使用不错 + */ +public class WeiYuXinComputerDemo { + public static void main(String[] args) { + Computer com = new Computer("联想","银灰色","Intel-I7","8G",8888,"正常"); + com.open(); + com.close("停止"); + com.sleep("睡眠"); + } + + public static class Computer{ + private String logo; + private String colour; + private String cpu; + private String mem; + private int price; + private String status; + Computer(String logo,String colour,String cpu,String mem,int price,String status){ + this.logo = logo; + this.colour = colour; + this.cpu = cpu; + this.mem = mem; + this.price = price; + this.status = status; + } + public void open(){ + System.out.println("品牌是"+this.logo+" "+"颜色是"+this.colour+" "+"CPU是"+this.cpu+" "+ + "内存是"+this.mem+" "+"价格是"+this.price+" "+"工作状态是"+this.status); + } + public void close(String status){ + this.status = status; + System.out.println("工作状态为"+this.status); + } + public void sleep( String status){ + this.status = status; + System.out.println("工作状态为"+this.status); + } + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/computer/XiaoMaComputer.java b/src/main/java/com/bt/xlt/homework0312/computer/XiaoMaComputer.java new file mode 100644 index 0000000..b8e0281 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/XiaoMaComputer.java @@ -0,0 +1,61 @@ +package com.bt.xlt.homework0312.computer; + +/** + * Reviewer: beigui + * Review Date: 2016/3/14 + * Comments:总体不错,提前预习了下一章的内容 + * 改进点:文件名没有按格式,类上没有作者和日期,if语句规范写法 + * 初始值实例化,预防空指针 + * 封装:内部调用时不要太麻烦,直接访问属性,不要再写方法访问。外部调用需要方法访问属性,这个想法不错。 + */ +public class XiaoMaComputer { + + private String brand; + private String color; + private String CPU; + private String memory; + private double Price; + private String working; + + public String getWorking(int state) { + if(state == 1) + return "电脑正常工作"; + else if (state==2) + return "电脑关闭"; + else + return "电脑休眠"; + } + + public String getBrand() { + return "品牌:Dell"; + } + + public String getColor() { + return "颜色:Black"; + } + + public String getCPU() { + return "CPU:Intel"; + } + + public String getMemory() { + return "内存:Kingston"; + } + + public double getPrice() { + return 2999; + } + + public void openComputer(){ + System.out.println(this.getWorking(1)); + System.out.println("显示电脑信息:"+this.getBrand()+"\n"+this.getColor()+"\n"+this.getCPU()+"\n"+this.getMemory()+"\n"+this.getPrice()); + } + + public void closeComputer(){ + System.out.println(getWorking(2)); + } + + public void sleepComputer(){ + System.out.println(getWorking(3)); + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/computer/XiaoMaComputerTest.java b/src/main/java/com/bt/xlt/homework0312/computer/XiaoMaComputerTest.java new file mode 100644 index 0000000..42fcb3c --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/XiaoMaComputerTest.java @@ -0,0 +1,13 @@ +package com.bt.xlt.homework0312.computer; + +public class XiaoMaComputerTest { + + public static void main(String[] args) { + + XiaoMaComputer com = new XiaoMaComputer(); + com.openComputer(); + //com.closeComputer(); + //com.sleepComputer(); + } + +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0312/computer/XueguiyangComputer.java b/src/main/java/com/bt/xlt/homework0312/computer/XueguiyangComputer.java new file mode 100644 index 0000000..0ac5a64 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/XueguiyangComputer.java @@ -0,0 +1,37 @@ +package com.bt.xlt.homework0312.computer; + +/** + * Created by xueguiyang on 16-3-14. + */ +public class XueGuiYangComputer { + String Brand; + String Color; + String CPU; + String Memory; + double price; + + public XueGuiYangComputer(String Brand,String Color,String CPU, String Memory,double price){ + this.Brand = Brand; + this.Color = Color; + this.CPU = CPU; + this.Memory = Memory; + this.price = price; + XueGuiYangComputer.this.start(); + System.out.println("品牌 "+this.Brand); + System.out.println("颜色: "+this.Color); + System.out.println("CPU: "+this.CPU); + System.out.println("内存: "+this.Memory); + System.out.println("价格: "+this.price); + } + public void start(){ + System.out.println("电脑工作状态为正常状态"); + } + + public void shutdown(){ + System.out.println("电脑工作状态为关闭状态"); + } + + public void sleep(){ + System.out.println("电脑工作状态为休眠状态"); + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/computer/XueguiyangComputerTest.java b/src/main/java/com/bt/xlt/homework0312/computer/XueguiyangComputerTest.java new file mode 100644 index 0000000..467ffcd --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/XueguiyangComputerTest.java @@ -0,0 +1,18 @@ +package com.bt.xlt.homework0312.computer; + +/** + * Created by xueguiyang on 16-3-14. + * Reviewer: beigui + * Review Date: 2016/3/14 + * Comments:变量第一个字母小写,题目上的打开方法遗漏了 + */ +public class XueGuiYangComputerTest { + public static void main(String[] args) { + XueGuiYangComputer xct = new XueGuiYangComputer ("lenovo","red","酷睿i5","128M",6666.66); + System.out.println("---------------------------"); + xct.shutdown(); + xct.sleep(); + + } + +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0312/computer/ZhaoJieComputer.java b/src/main/java/com/bt/xlt/homework0312/computer/ZhaoJieComputer.java new file mode 100644 index 0000000..b4a1d7f --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/computer/ZhaoJieComputer.java @@ -0,0 +1,73 @@ +package com.bt.xlt.homework0312.computer; + +/** + * Created by Administrator on 2016/3/16. + * 设计一个计算机类,要求如下: + * 属性:品牌、颜色、cpu、内存容量、价格、工作状态 + * 方法:打开、关闭、休眠 + * 创建一个计算机对象,调用打开、关闭、休眠方法 + * 打开时,显示品牌、颜色、cpu、内存容量、价格、工作状态为正常; + * 关闭时,显示工作状态为停止; + * 休眠时,显示工作状态为睡眠。 + * Reviewer: beigui + * Review Date: 2016/3/18 + */ +public class ZhaoJieComputer { + + public static void main(String[] args) { + + // 声明变量i + int i; + i = 1; + choose(i); + i = 2; + choose(i); + i = 3; + choose(i); + } + + // choose方法:switch语句 + public static void choose(int i) { + ZhaoJieComputer computer = new ZhaoJieComputer();// 创建一个计算机类 + Computer1 computer1 = computer.new Computer1();// 创建一个内部类 + + switch (i) { + case 1: + computer1.open(); + break; + case 2: + computer1.close(); + break; + case 3: + computer1.sleep(); + break; + default: + System.out.println(); + } + } + + class Computer1 { + String brand = "MacBook"; + String color = "香槟金"; + String cpu = "酷睿"; + String memory = "16GB"; + int price = 11999; + String[] work = { "正常", "停止", "睡眠" }; + + // 打开open + void open() { + System.out.println( + "电脑打开:" + brand + " " + color + " " + cpu + " " + memory + " " + price + " " + work[0]); + } + + // 关闭close + public void close() { + System.out.println("电脑关闭:" + work[1]); + } + + // 休眠sleep + public void sleep() { + System.out.println("电脑休眠:" + work[2]); + } + } +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0312/getValues/ChenCaiYu_Evaluate.java b/src/main/java/com/bt/xlt/homework0312/getValues/ChenCaiYu_Evaluate.java new file mode 100644 index 0000000..286c212 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/getValues/ChenCaiYu_Evaluate.java @@ -0,0 +1,48 @@ +package com.bt.xlt.homework0312.getValues; + +import java.util.Arrays; + +/** + * Created by little_5 on 2016/3/16. + * 求值 给定一个数组62,53,41,84,77,55,输出平均值、最大值、最小值、中位数 + * Reviewer: beigui + * Review Date: 2016/3/18 + * Comments:总体不错 + * 改进点: + * 需要考虑平均数和中位数是小数的情况 + * 因为题目上求数值是一个整体,只需要做一次整体排序即可 + */ +public class ChenCaiYu_Evaluate { + public static void main (String[] args) { + int arr[] = {62,53,41,84,77,55}; + //求平均值、最大值以及最小值 + int sum = arr[0]; + int avg = 0; + int max = arr[0]; + int min = arr[0]; + for (int i = 1 ; i < arr.length ; i++) { + sum += arr[i]; + if (max < arr[i]) { + max = arr[i]; + } + if (min > arr[i]) { + min = arr[i]; + } + } + avg = sum / arr.length; + System.out.println("平均值为:" + avg); + System.out.println("最大值为:" + max); + System.out.println("最小值为:" + min); + //求中位数 + Arrays.sort(arr); + int med = 0; + int flag = 0; + if (arr.length % 2 == 1) { + med = arr[arr.length / 2]; + } else if (arr.length % 2 == 0) { + flag = arr[arr.length / 2 - 1] + arr[arr.length / 2]; + med = flag / 2; + } + System.out.println("中位数为:" + med); + } +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0312/getValues/FangWeiLiArrayOperation.java b/src/main/java/com/bt/xlt/homework0312/getValues/FangWeiLiArrayOperation.java new file mode 100644 index 0000000..6f8b5c8 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/getValues/FangWeiLiArrayOperation.java @@ -0,0 +1,49 @@ +package com.bt.xlt.homework0312.getValues; +import java.util.Arrays; +import java.lang.Math; + +/** + * Created by FangWeiLi on 2016/3/16. + * Reviewer: beigui + * Review Date: 2016/3/16 + * Comments: 扩展了需求,给定数组变成了随机数组,可以通过随机值,检验程序的健壮性。测试过程中经常用到此方法 + */ +public class FangWeiLiArrayOperation { + + public static void main(String[] args) { + float[] array = getRandomArray(6, (float) 100); + for(int i=0;i array[j + 1]) { + min = array[j + 1]; + } + } + System.out.println("\n数组元素的最小值为:" + min); + + //计算并输出最大值 + int max = array[0]; + for (int m = 0; m < array.length - 1; m++) { + if (max < array[m + 1]) { + max = array[m + 1]; + } + } + System.out.println("数组元素的最大值为:" + max); + + //计算并输入最大值后,除以数组位数,求平均数 + int sum = 0; + for (int x = 0; x < array.length; x++) { + sum += array[x]; + } + System.out.println("数组元素的和为:" + sum); + float avg = sum / array.length; + System.out.println("平均数为:" + avg); + + //计算中位数 + Arrays.sort(array); //给数组排序 + int MidNum1 , MidNum2 = 0; + int ArrLenOdevity = array.length % 2; //求数组元素数的奇偶性 + if (ArrLenOdevity == 0) { //如果是偶数,有两个中位数 + int MN1 = array.length / 2; //计算出后一个中位数的数组下标 + int MN2 = MN1 -1; //计算出前一个中位数的数组下标 + MidNum1 = array[MN1]; + MidNum2 = array[MN2]; + float avgMidNum = ( MidNum1 + MidNum2 ) / 2; + System.out.println("数组的中间位置的数有两个,分别为:" + MidNum2 + "和" + +MidNum1); + System.out.println("取这两个数的平均数后,数组的中位数是:" + avgMidNum); + } else { + //数组元素数为奇数时,(数组个数-1)/2 求中位数元素的数组下标 + int MN1 = (array.length - 1) / 2; + MidNum1 = array[MN1]; // 求出中位数 + System.out.println("数组的中位数是:" + MidNum1); + } + + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/getValues/JiaBinCheckNum.java b/src/main/java/com/bt/xlt/homework0312/getValues/JiaBinCheckNum.java new file mode 100644 index 0000000..b78ace0 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/getValues/JiaBinCheckNum.java @@ -0,0 +1,32 @@ +package com.bt.xlt.homework0312.getValues; + +import java.util.Arrays; + +/** + * Created by jiabin on 2016/3/12. + * Reviewer: beigui + * Review Date: 2016/3/13 + */ +public class JiaBinCheckNum { + public static void main(String[] args) { + int[] arr = new int[]{62,53,41,84,77,55}; + int sum = 0; + int arrLength = arr.length; + double median; //中位数 + + Arrays.sort(arr); + for (int num : arr) { + sum += num; + } + + double avg = (double)sum / arrLength; //平均数 + + if (arrLength % 2 == 0) { + median = (double) (arr[arrLength / 2 - 1] + arr[arrLength / 2]) / 2; + } else { + median = arr[arrLength / 2]; + } + + System.out.println("最小数:" + arr[0] + "\n" + "最大数:" + arr[arrLength - 1] + "\n" + "平均数:" + avg + "\n" + "中位数:" + median); + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/getValues/LiChangxingArraryCompare.java b/src/main/java/com/bt/xlt/homework0312/getValues/LiChangxingArraryCompare.java new file mode 100644 index 0000000..36a623d --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/getValues/LiChangxingArraryCompare.java @@ -0,0 +1,47 @@ +package com.bt.xlt.homework0312.getValues; + +import java.util.Arrays; +/** + * Created by LiChangxing on 2016/3/14. + * Reviewer: beigui + * Review Date: 2016/3/16 + * Comments:总体不错 + * 改进点: + * 需要考虑平均数是小数的情况。中位数不能自己理解,如果对需求理解不准确,写下的程序就更不准确了。希望有所启发。 + * 因为题目上求数值是一个整体,只需要做一次整体排序即可 + */ +public class LiChangxingArraryCompare { + public static void main(String[] args) { + int[] array = new int[]{62, 53, 41, 84, 77,55}; + + int Max = array[0]; + int Min = array[0]; + int Sum = 0; + + for (int i = 0; i < array.length; i++) { + if (array[i] > Max) { + Max = array[i]; + } + if (array[i] < Min) { + Min = array[i]; + } + + Sum += array[i]; + } + + System.out.println("该数组的最大数为:" + Max); + System.out.println("该数组的最小数位:" + Min); + System.out.println("该数组的平均数为:"+ Sum/array.length); + + Arrays.sort(array); + + if( array.length % 2 == 0){ + + System.out.println("该数组的中位数是:" + array[( array.length-1 )/2 ] + " " + array[( array.length-1 )/2 + 1]); + }else { + System.out.println("该数组的中位数是:" + array[(array.length +1 )/2 - 1]); + } + + } +} + diff --git a/src/main/java/com/bt/xlt/homework0312/getValues/LiDongKunArraysValues.java b/src/main/java/com/bt/xlt/homework0312/getValues/LiDongKunArraysValues.java new file mode 100644 index 0000000..2eddfd0 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/getValues/LiDongKunArraysValues.java @@ -0,0 +1,41 @@ +package com.bt.xlt.homework0312.getValues; + +/** + * Created by lidongkun on 2016/3/14. + * Reviewer: beigui + * Review Date: 2016/3/15 + * Comments:总体不错 + * 改进点: + * 需要考虑平均数和中位数是小数的情况 + * 因为题目上求数值是一个整体,只需要做一次整体排序即可 + */ +public class LiDongKunArraysValues { + public static void main(String[] args) { + int[] arr = new int[] {62,53,41,84,77,55}; + int sum = 0; + int avg = 0; + for(int i = 0;i < arr.length;i ++) { + sum += arr[i]; + } + avg = sum/arr.length; + System.out.println("arr数组的平均值为:" + avg); + + int max = arr[0]; + for(int i = 1;i < arr.length;i ++) { + if(arr[i] > max) { + max = arr[i]; + } + } + System.out.println("arr数组的最大值为:" + max); + + int min = arr[0]; + for(int i = 1;i < arr.length;i ++) { + if(arr[i] < min) { + min = arr[i]; + } + } + System.out.println("arr数组的最小值为:" + min); + + System.out.println("arr数组的中位数为" + arr[(arr.length/2)-1]); + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/getValues/LiWenArrayOperate.java b/src/main/java/com/bt/xlt/homework0312/getValues/LiWenArrayOperate.java new file mode 100644 index 0000000..da9418d --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/getValues/LiWenArrayOperate.java @@ -0,0 +1,51 @@ +package com.bt.xlt.homework0312.getValues; + +/** + * Created by wen.li on 16/3/12. + * 给定一个数组62,53,41,84,77,55,输出平均值、最大值、最小值、中位数 + * Reviewer: beigui + * Review Date: 2016/3/16 + * Comments: 不错,能考虑到平均数和中位数为小数的情况 + */ + +public class LiWenArrayOperate { + public static void main(String[] args) { + int[] arr = new int[]{62,53,41,84,77,55}; + int temp; + float sum = 0; + float mid; + int len = arr.length; + for (int i = 0; i < len; i++) { + + //排序 + for (int j = 0; j< len-i-1; j++) { + if (arr[j]>arr[j+1]) { + temp = arr[j]; + arr[j] = arr[j+1]; + arr[j+1] = temp; + } + } + } + + System.out.print("排序后数组:"); + + for (int j = 0; j< len; j++) { + sum += arr[j]; + System.out.print(arr[j] + ","); + } + + //计算中位数 + if (len % 2 == 1) { + mid = arr[(len-1)/2]; + } else { + mid = (arr[len/2] + arr[(len/2) - 1]); + mid = mid / 2; + } + + System.out.println("sum = " + sum); + System.out.println("数组最大值为:" + arr[len-1]); + System.out.println("数组最小值为:" + arr[0]); + System.out.println("平均值:" + sum / len); + System.out.println("中位数为:" + mid); + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/getValues/MaXiaoYuArrayFind.java b/src/main/java/com/bt/xlt/homework0312/getValues/MaXiaoYuArrayFind.java new file mode 100644 index 0000000..e1f1bec --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/getValues/MaXiaoYuArrayFind.java @@ -0,0 +1,92 @@ +package com.bt.xlt.homework0312.getValues; + +/** + * Created by Xiaoyu on 2016/3/14. + * Reviewer: beigui + * Review Date: 2016/3/15 + * Comments:非常认真,代码规范不错 + * 改进点: + * 因为题目上求数值是一个整体,只需要做一次整体排序即可 + * 把问题简单化也是一种能力 + */ +public class MaXiaoYuArrayFind { + public static void main(String[] args) { + + /** 创建数组 */ + int[] arr = new int[] { 62, 53, 41, 84, 77, 55 }; + + /** 输出数组最大值 */ + int max = arr[0]; + int i; + for ( i = 0; i < arr.length; i++ ) { + if ( arr[i] > max ) { + max = arr[i]; + } + } + System.out.println( "数组的最大值是:"+ max ); + + /** 输出数组最小值 */ + int min = arr[0]; + int j; + for ( j = 0; j < arr.length; j++ ) { + if ( arr[j] < min ) { + min = arr[j]; + } + } + System.out.println( "数组的最小值是:"+ min ); + + /** 输出数组平均值 */ + double ave; + int sum = 0; + int k; + for ( k = 0; k < arr.length; k++ ) { + sum = sum + arr[k]; + } + ave = ( double )sum / arr.length; + System.out.println( "数组的平均值是:" + ave ); + + /** 输出数组中位数 */ + double mid = 0; + int[] arr1 = new int[arr.length]; + arr1 = arr; + int max1 = arr1[0]; + int min1 = arr1[0]; + int sum1 = sum; + int p; + int q; + int q1 = 0; + int q2 = 0; + int mark = 0; + for ( p = 0; p < arr.length; p++ ) { + mark = mark + Math.abs(arr1[p]) + 1; + } + for ( p = 0; p < (arr1.length - 1)/2; p++ ) { + for ( q = 0; q < arr.length; q++) { + if (arr1[q] == mark ) { + continue; + } + else if (arr1[q] > max1) { + max1 = arr1[q]; + q1 = q; + } + else if (arr1[q] < min1) { + min1 = arr1[q]; + q2 = q; + } + } + sum1 = sum1 - max1 - min1; + arr1[q1] = mark; + arr1[q2] = mark; + max1 = min; + min1 = max; + q = 0; + } + if ( arr1.length % 2 == 0 ) { + mid = ( double ) sum1/2; + } + else { + mid = sum1; + } + System.out.println( "数组的中位数是:" + mid ); + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/getValues/MaXiaoYuArrayFindRef.java b/src/main/java/com/bt/xlt/homework0312/getValues/MaXiaoYuArrayFindRef.java new file mode 100644 index 0000000..73d9153 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/getValues/MaXiaoYuArrayFindRef.java @@ -0,0 +1,86 @@ +package com.bt.xlt.homework0312.getValues; + +/** + * Created by Xiaoyu on 2016/3/14. + */ +public class MaXiaoYuArrayFindRef { + public static void main(String[] args) { + + /** 创建数组 */ + int[] arr = new int[] { 62, 53, 41, 84, 77, 55 }; + + /** 输出数组最大值 */ + int max = arr[0]; + int i; + for ( i = 0; i < arr.length; i++ ) { + if ( arr[i] > max ) { + max = arr[i]; + } + } + System.out.println( "数组的最大值是:"+ max ); + + /** 输出数组最小值 */ + int min = arr[0]; + int j; + for ( j = 0; j < arr.length; j++ ) { + if ( arr[j] < min ) { + min = arr[j]; + } + } + System.out.println( "数组的最小值是:"+ min ); + + /** 输出数组平均值 */ + double ave; + int sum = 0; + int k; + for ( k = 0; k < arr.length; k++ ) { + sum = sum + arr[k]; + } + ave = ( double )sum / arr.length; + System.out.println( "数组的平均值是:" + ave ); + + /** 输出数组中位数 */ + double mid = 0; + int[] arr1 = new int[arr.length]; + arr1 = arr; + int max1 = arr1[0]; + int min1 = arr1[0]; + int sum1 = sum; + int p; + int q; + int q1 = 0; + int q2 = 0; + int mark = -2147483648; + for ( p = 0; p < (arr1.length - 1)/2; p++ ) { + for ( q = 0; q < arr.length; q++) { + if (arr1[q] == mark ) { + continue; + } + else if (arr1[q] > max1) { + max1 = arr1[q]; + q1 = q; + } + else if (arr1[q] < min1) { + min1 = arr1[q]; + q2 = q; + } + } + sum1 = sum1 - max1 - min1; + if ( max1 >= mark ) { + mark = max1 + 1; + } + arr1[q1] = mark; + arr1[q2] = mark; + max1 = min; + min1 = max; + q = 0; + } + if ( arr1.length % 2 == 0 ) { + mid = ( double ) sum1/2; + } + else { + mid = sum1; + } + System.out.println( "数组的中位数是:" + mid ); + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/getValues/QiZhiArrayOperate.java b/src/main/java/com/bt/xlt/homework0312/getValues/QiZhiArrayOperate.java new file mode 100644 index 0000000..e6402b9 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/getValues/QiZhiArrayOperate.java @@ -0,0 +1,37 @@ +package com.bt.xlt.homework0312.getValues; + +import java.util.Arrays; +/** + * Created by QZ on 2016/3/16. + * 作业:给定一个数组62,53,41,84,77,55,输出平均值、最大值、最小值、中位数* + * Reviewer: beigui + * Review Date: 2016/3/18 + * Comments:能考虑到数据个数为1的特殊情况,增加了程序的健壮性 + */ +public class QiZhiArrayOperate { + public static void main(String[] args) { + int[] arr = new int[]{62, 53, 41, 84, 77,55}; + System.out.println(arr); + int sum = 0; + Arrays.sort(arr); + System.out.print("升序结果是:"); + for (int i = 0; i < arr.length; i++) { + sum += arr[i]; + System.out.print(arr[i] + ","); + } + System.out.println(); + System.out.println("数组元素中各个元素之和为:" + sum); + System.out.println("数组元素平均值为:" + sum / arr.length); + System.out.println("数组中最大值是:" + arr[(arr.length - 1)]); + System.out.println("数组中最小值是:" + arr[0]); + + if (arr.length % 2 != 0) { + System.out.println("数组中的中位数是:" + arr[arr.length / 2]); + } else if(arr.length % 2 == 0){ + System.out.println("数组中的中位数是:" + arr[(arr.length / 2) - 1] + "," + arr[(arr.length / 2)]); + } + else + System.out.println("数组个数必须大于1"); + + } +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0312/getValues/WangXiaoJiaGetValues.java b/src/main/java/com/bt/xlt/homework0312/getValues/WangXiaoJiaGetValues.java new file mode 100644 index 0000000..389bb52 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/getValues/WangXiaoJiaGetValues.java @@ -0,0 +1,59 @@ +package com.bt.xlt.homework0312.getValues; + +import java.util.Arrays; + +/** + * 给定一个数组62,53,41,84,77,55,输出平均值、最大值、最小值、中位数 + * Created by 王小佳 on 2016/3/17. + * Reviewer: beigui + * Review Date: 2016/3/18 + * Comments:总体不错 + * 改进点:因为题目上求数值是一个整体,只需要做一次整体排序即可 + * 没有考虑到平均数和中位数有小数的情况 + */ +public class WangXiaoJiaGetValues { + public static void main(String[] args) { + int[] array = new int[]{62, 53, 41, 84, 77, 55}; + for (int i = 0; i < array.length; i++) { + System.out.println(array[i] + ""); + } + /*求最大值*/ + int max = 0; + for (int i = 0; i < array.length; i++) { + if (array[i] > max) { + max = array[i]; + } else if (array[i] <= max) { + max = max; + } + } + System.out.println("max=" + max); + /*求最小值*/ + int min = array[0]; + for (int i = 0; i < array.length; i++) { + if (array[i] < min) { + min = array[i]; + } else if (array[i] >= min) { + min = min; + } + } + System.out.println("min=" + min); + /* 求平均数*/ + double ave = 0; + int sum = 0; + for (int i = 0; i < array.length; i++) { + sum = sum + array[i]; + } + ave = sum / array.length; + System.out.println("平均数:" + ave); + System.out.println("总数:" + sum); + + /*求中位数*/ + Arrays.sort(array); + if (array.length % 2 == 0) { + System.out.println( "中位数:" + (array[array.length / 2 - 1] + array[array.length / 2 ]) / 2); + } else { + System.out.println( "中位数:" + array[(array.length-1 )/ 2]); + } + } + +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0312/getValues/WeiYuXinGetValueTest.java b/src/main/java/com/bt/xlt/homework0312/getValues/WeiYuXinGetValueTest.java new file mode 100644 index 0000000..f3bb5c2 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/getValues/WeiYuXinGetValueTest.java @@ -0,0 +1,38 @@ +package com.bt.xlt.homework0312.getValues; + +/** + * Created by weiyuxin on 2016/3/14. + * 功能:给定一个数组,输出平均值,最大值,最小值、中位数。 + * Reviewer: beigui + * Review Date: 2016/3/14 + * Comments: 文件名没有按要求 + * 变量声明和初始化不要放在一起,一行对一个变量进行作用。修改下面的声明 + * 因为题目上求数值是一个整体,只需要做一次整体排序即可 + */ +public class WeiYuXinGetValueTest { + public static void main(String[] args) { + int[] arr = new int[]{62,53,41,84,77,55}; + int avg,max = arr[0],min = arr[0],media,sum = 0,k = arr.length / 2; + + for (int i = 0; i < arr.length; i++) { + sum += arr[i]; + } + avg = sum / arr.length; + System.out.println("平均值是:" + avg); + + for (int i = 1; i < arr.length ; i++) { + if (arr[i] > max) max = arr[i]; + } + System.out.println("最大值是:" + max); + + for (int i = 1; i < arr.length; i++) { + if (arr[i] < min) min = arr[i]; + } + System.out.println("最小值是:" + min); + + if (arr.length % 2 != 0) { + media = arr[k] ; + }else media = (arr[k]+arr[k-1])/2; + System.out.println("中位数是:"+ media); + } +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0312/getValues/XiaoMa.java b/src/main/java/com/bt/xlt/homework0312/getValues/XiaoMa.java new file mode 100644 index 0000000..9ada7db --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/getValues/XiaoMa.java @@ -0,0 +1,80 @@ +package com.bt.xlt.homework0312.getValues; + +/** + * Reviewer: beigui + * Review Date: 2016/3/14 + * Comments:总体不错,排序是用的冒泡排序 + * 改进点:文件名没有按格式,类上没有作者和日期,作业java文件打包 + * 因为题目上求数值是一个整体,只需要做一次整体排序即可 + * 没有考虑到平均数和中位数有小数的情况 + */ +public class XiaoMa { + + //1.求数组平均值 + public static int getAvg(int[] arr) { + + int sum = 0; + for (int i = 0; i < arr.length; i++) { + sum = sum + arr[i];//求和操作 + } + return sum / arr.length;//和除以数组长度 + } + + //2.求数组最大值 + public static int getMax(int[] arr) { + int Max = arr[0]; + for (int i = 1; i < arr.length; i++) { + if (arr[i] > Max) {//获取到的不同元素与最大值比较 + Max = arr[i]; + } + } + return Max; + } + + //3.获取数组最小值 + public static int getMin(int[] arr) { + + int Min = 0; + for (int i = 1; i < arr.length; i++) { + if (arr[i] < arr[Min]) { + arr[Min] = arr[i]; + } + } + return arr[Min]; + } + + //4.获取中位数 + //步骤:1.先对数组进行排序;2.然后进行折半查找,获取排序后中间值,如果数组出现偶数,把中间两位相加求平均数 + public static void GetMid(int[] arr) { + int Min = 0; + int Max = arr.length - 1; + int Mid = (Min + Max) / 2; + + for (int i = 0; i < arr.length - 1; i++) { + for (int k = i + 1; k < arr.length; k++) { + if (arr[i] > arr[k]) { + + int temp = arr[i]; + arr[i] = arr[k]; + arr[k] = temp; + } + } + } + + if (arr.length % 2 == 0) + System.out.println("获取到的中位数是:" + (arr[Mid] + arr[Mid + 1]) / 2); + else + System.out.println("获取到的中位数是:" + arr[Mid]); + } + + public static void main(String[] args) { + + int[] arr = new int[]{62, 53, 41, 84, 77, 55}; + //调用中位数函数 + GetMid(arr); + System.out.println("获取到的平均数为:" + getAvg(arr)); + System.out.println("获取到的最大数为:" + getMax(arr)); + System.out.println("获取到的最小数为:" + getMin(arr)); + + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/getValues/XueGuiYangCheckNum.java b/src/main/java/com/bt/xlt/homework0312/getValues/XueGuiYangCheckNum.java new file mode 100644 index 0000000..98d537a --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/getValues/XueGuiYangCheckNum.java @@ -0,0 +1,61 @@ +package com.bt.xlt.homework0312.getValues; + +import java.util.Arrays; + +/** + * Created by xueguiyang on 16-3-14. + * Reviewer: beigui + * Review Date: 2016/3/14 + * Comments:总体不错,能考虑到平均数和中位数是小数的情况 + * 改进点:因为题目上求数值是一个整体,只需要做一次整体排序即可 + */ +public class XueGuiYangCheckNum { + public static double average(double arr[]) { + int sum = 0; + for (int i = 0; i < arr.length; i++) { + sum += arr[i]; + } + return (sum / arr.length); + } + + public static double Max(double arr[]) { + double Max = arr[0]; + for (int i = 1; i < arr.length; i++) { + if (Max < arr[i]) { + Max = arr[i]; + } + } + return Max; + } + + public static double Min(double arr[]) { + double Min = arr[0]; + for (int i = 1; i < arr.length; i++) { + if (Min > arr[i]) { + Min = arr[i]; + } + } + return Min; + } + + public static double Median(double arr[]) { + if (arr.length % 2 == 0) { + return (arr[arr.length / 2 - 1] + arr[arr.length / 2]) / 2; + } else + return arr[arr.length / 2]; + } + + public static void main(String[] args) { + double arr[] = new double[]{62, 53, 41, 84, 77, 55}; + //必须使用Double,有的时候除不尽 + System.out.println("平均数为: " + (average(arr))); + System.out.println("最大数为: " + Max(arr)); + System.out.println("最小数为: " + Min(arr)); + //System.out.println("中位数为: " + Median(arr)); + Arrays.sort(arr);//对数组从小到大进行排序 +// for (double item : arr) { +// System.out.println(item); +// } + System.out.println("中位数为: " + Median(arr)); + } +} diff --git a/src/main/java/com/bt/xlt/homework0312/getValues/ZhaoJieArray.java b/src/main/java/com/bt/xlt/homework0312/getValues/ZhaoJieArray.java new file mode 100644 index 0000000..180b7a9 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0312/getValues/ZhaoJieArray.java @@ -0,0 +1,68 @@ +package com.bt.xlt.homework0312.getValues; + +import java.util.Arrays; + +/** + * 功能:给定一个数组{62,53,41,84,77,55},输出平均值、最大值、最小值、中位数 + * 中位数:当变量值的项数N为奇数时,处于中间位置的变量值即为中位数;当N为偶数时,中位数则为处于中间位置的2个变量值的平均数。(注意:中位数只能有一个) + * Reviewer: beigui + * Review Date: 2016/3/18 + */ +public class ZhaoJieArray { + + public static void main(String[] args) { + int[] myArray = {62, 53, 41, 84, 77, 55}; + + //打印所有数组元素 + for (int i = 0; i < myArray.length; i++) { + System.out.print(myArray[i] + " "); + } + /* 方法2:打印所有数组元素 + for (int element: myArray) { + System.out.println(element); + } + */ + + // 计算所有元素的总和 + double total = 0; + for (int i = 0; i < myArray.length; i++) { + total += myArray[i]; + } + System.out.println(""); + System.out.println("total is " + total); + + //输出平均值 + double avg = 0; + avg = total / myArray.length; + System.out.println("avg is " + avg); + + //输出最大值 + int max = myArray[0];//初始化为数组中任意一个元素 + for (int i = 1; i < myArray.length; i++) { + if (myArray[i] > max) { + max = myArray[i]; + } + } + System.out.println("max is " + max); + + //输出最小值 + int min = 0;//初始化为数组中任意一个角标 + for (int i = 1; i < myArray.length; i++) { + if (myArray[i] < myArray[min]) { + min = i; + } + } + System.out.println("min is " + myArray[min]); + + //输出中位数 + Arrays.sort(myArray);//排序 + double med = 0; + + if ((myArray.length % 2) == 0) { + med = (myArray[myArray.length / 2] + myArray[myArray.length / 2 - 1]) / 2.0;//medNum为double类型,除数是2的话,结果为int类型 + } else { + med = myArray[myArray.length / 2]; + } + System.out.println("med is " + med); + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/chencaiyu/ChenCaiYu_Area.java b/src/main/java/com/bt/xlt/homework0319/chencaiyu/ChenCaiYu_Area.java new file mode 100644 index 0000000..c98820e --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/chencaiyu/ChenCaiYu_Area.java @@ -0,0 +1,37 @@ +package com.bt.xlt.homework0319.chencaiyu; + +import java.util.Scanner; + +/** + * Created by little_5 on 2016-03-22. + * 定义一个图形父类abstract Shape,包含求面积的方法getArea(),扩展子类:圆Circle、矩形Square、三角形Triangle,分别重写求面积方法。 + * 用户可以选择输入某一个多边形,输入数据后,求出这个多边形的面积 + * Reviewer: beigui + * Review Date: 2016/3/22 + */ +public class ChenCaiYu_Area { + public static void main (String[] args) { + Scanner input = new Scanner(System.in); + System.out.println("请按照要求输入您想计算面积的图形,圆形输入1,矩形输入2,三角形输入3,其他图形输入0。"); + System.out.print("请输入:"); + int shape = input.nextInt(); + ChenCaiYu_Shape shapeObject = null; + switch (shape) { + case 1 : + shapeObject = new ChenCaiYu_Circle(); + break; + case 2 : + shapeObject = new ChenCaiYu_Square(); + break; + case 3 : + shapeObject = new ChenCaiYu_Triangle(); + break; + default: + System.out.println("暂不支持该类图形的面积计算"); + break; + } + if(shapeObject != null) { + shapeObject.getArea(); + } + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/chencaiyu/ChenCaiYu_Circle.java b/src/main/java/com/bt/xlt/homework0319/chencaiyu/ChenCaiYu_Circle.java new file mode 100644 index 0000000..b955f1a --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/chencaiyu/ChenCaiYu_Circle.java @@ -0,0 +1,17 @@ +package com.bt.xlt.homework0319.chencaiyu; + +import java.util.Scanner; + +/** + * Created by little_5 on 2016-03-22. + */ +public class ChenCaiYu_Circle extends ChenCaiYu_Shape { + @Override + public void getArea() { + Scanner input = new Scanner(System.in); + System.out.print("请输入半径长度:"); + double edge = input.nextDouble(); + area = edge * edge * Math.PI; + System.out.println("该圆形面积为:" + area); + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/chencaiyu/ChenCaiYu_Shape.java b/src/main/java/com/bt/xlt/homework0319/chencaiyu/ChenCaiYu_Shape.java new file mode 100644 index 0000000..b930d80 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/chencaiyu/ChenCaiYu_Shape.java @@ -0,0 +1,11 @@ +package com.bt.xlt.homework0319.chencaiyu; + +/** + * Created by little_5 on 2016-03-22. + * 定义一个图形父类abstract Shape,包含求面积的方法getArea(),扩展子类:圆Circle、矩形Square、三角形Triangle,分别重写求面积方法。 + * 用户可以选择输入某一个多边形,输入数据后,求出这个多边形的面积 + */ +public abstract class ChenCaiYu_Shape { + double area; + public abstract void getArea(); +} diff --git a/src/main/java/com/bt/xlt/homework0319/chencaiyu/ChenCaiYu_Square.java b/src/main/java/com/bt/xlt/homework0319/chencaiyu/ChenCaiYu_Square.java new file mode 100644 index 0000000..e89e87d --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/chencaiyu/ChenCaiYu_Square.java @@ -0,0 +1,19 @@ +package com.bt.xlt.homework0319.chencaiyu; + +import java.util.Scanner; + +/** + * Created by little_5 on 2016-03-22. + */ +public class ChenCaiYu_Square extends ChenCaiYu_Shape { + @Override + public void getArea() { + Scanner input = new Scanner(System.in); + System.out.print("请输入长:"); + double length = input.nextDouble(); + System.out.print("请输入宽:"); + double width = input.nextDouble(); + area = length * width; + System.out.println("该矩形面积为:" + area); + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/chencaiyu/ChenCaiYu_Triangle.java b/src/main/java/com/bt/xlt/homework0319/chencaiyu/ChenCaiYu_Triangle.java new file mode 100644 index 0000000..2950805 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/chencaiyu/ChenCaiYu_Triangle.java @@ -0,0 +1,19 @@ +package com.bt.xlt.homework0319.chencaiyu; + +import java.util.Scanner; + +/** + * Created by little_5 on 2016-03-22. + */ +public class ChenCaiYu_Triangle extends ChenCaiYu_Shape { + @Override + public void getArea() { + Scanner input = new Scanner(System.in); + System.out.print("请输入底:"); + double length = input.nextDouble(); + System.out.print("请输入高:"); + double height = input.nextDouble(); + area = length * height / 2; + System.out.println("该三角形面积为:" + area); + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/fangxu/Fangxu_Calculate_Area.java b/src/main/java/com/bt/xlt/homework0319/fangxu/Fangxu_Calculate_Area.java new file mode 100644 index 0000000..ec8a090 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/fangxu/Fangxu_Calculate_Area.java @@ -0,0 +1,28 @@ +package com.bt.xlt.homework0319.fangxu; + +/** + * Created by fangxu on 2016/3/20. + */ +import java.util.Scanner; + +public class Fangxu_Calculate_Area { + public static void main(String[] args) { + + System.out.println("请选择图像类型:(1:圆形; 2:三角形; 3:矩形;)"); + Scanner ShapeType = new Scanner(System.in); + int Type = ShapeType.nextInt(); + + if (Type == 1) { + Fangxu_Shape CircleArea = new Fangxu_Circle(); + CircleArea.getArea(); + } else if (Type == 2) { + Fangxu_Shape TriangleArea = new Fangxu_Triangle(); + TriangleArea.getArea(); + } else if (Type == 3) { + Fangxu_Shape SquareArea = new Fangxu_Square(); + SquareArea.getArea(); + } else { + System.out.println("没有该类型的图形"); + } + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/fangxu/Fangxu_Circle.java b/src/main/java/com/bt/xlt/homework0319/fangxu/Fangxu_Circle.java new file mode 100644 index 0000000..fd310c0 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/fangxu/Fangxu_Circle.java @@ -0,0 +1,17 @@ +package com.bt.xlt.homework0319.fangxu; + +/** + * Created by fangxu on 2016/3/19. + */ +import java.util.Scanner; +public class Fangxu_Circle extends Fangxu_Shape { + @Override + public void getArea() { + System.out.println("请输入圆形的半径(π=3.14): (厘米)"); + Scanner Radius = new Scanner(System.in); + float r = Radius.nextFloat(); + + float Circle_Area = Pi * r * r; + System.out.println("圆形的面积为:" + Circle_Area + " 平方厘米"); + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/fangxu/Fangxu_Shape.java b/src/main/java/com/bt/xlt/homework0319/fangxu/Fangxu_Shape.java new file mode 100644 index 0000000..8bb6851 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/fangxu/Fangxu_Shape.java @@ -0,0 +1,12 @@ +package com.bt.xlt.homework0319.fangxu; + +/** + * Created by fangxu on 2016/3/19. + */ +public abstract class Fangxu_Shape { + + public float Pi = 3.14f; + + public void getArea(){ + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/fangxu/Fangxu_Square.java b/src/main/java/com/bt/xlt/homework0319/fangxu/Fangxu_Square.java new file mode 100644 index 0000000..a23ff83 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/fangxu/Fangxu_Square.java @@ -0,0 +1,21 @@ +package com.bt.xlt.homework0319.fangxu; + +/** + * Created by fangxu on 2016/3/20. + */ +import java.util.Scanner; +public class Fangxu_Square extends Fangxu_Shape { + @Override + public void getArea() { + System.out.println("请输入矩形的长、宽: (厘米)"); + Scanner length = new Scanner(System.in); + float L = length.nextFloat(); + + Scanner high = new Scanner(System.in); + float h = high.nextFloat(); + + float Square_Area = (L * h); + System.out.println("矩形的面积为:" + Square_Area + " 平方厘米"); + } + +} diff --git a/src/main/java/com/bt/xlt/homework0319/fangxu/Fangxu_Triangle.java b/src/main/java/com/bt/xlt/homework0319/fangxu/Fangxu_Triangle.java new file mode 100644 index 0000000..b2768f8 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/fangxu/Fangxu_Triangle.java @@ -0,0 +1,20 @@ +package com.bt.xlt.homework0319.fangxu; + +/** + * Created by fangxu on 2016/3/20. + */ +import java.util.Scanner; +public class Fangxu_Triangle extends Fangxu_Shape{ + @Override + public void getArea() { + System.out.println("请输入三角形的底、高: (厘米)"); + Scanner bottom = new Scanner(System.in); + float b = bottom.nextFloat(); + + Scanner high = new Scanner(System.in); + float h = high.nextFloat(); + + float Triangle_Area = (b * h) / 2; + System.out.println("三角形的面积为:" + Triangle_Area + " 平方厘米"); + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/jiabin/JiaBinCircle.java b/src/main/java/com/bt/xlt/homework0319/jiabin/JiaBinCircle.java new file mode 100644 index 0000000..77fa274 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/jiabin/JiaBinCircle.java @@ -0,0 +1,19 @@ +package com.bt.xlt.homework0319.jiabin; + +/** + * Created by bin.jia on 2016/3/21. + */ +public class JiaBinCircle extends JiaBinShape { + final double PI = 3.14; + + @Override + public void getArea(double radius) { + area = PI * Math.pow(radius,2); + System.out.println("该圆形的面积为:" + area); + } + + @Override + public void getArea(double num1, double num2) { + + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/jiabin/JiaBinJudgeShape.java b/src/main/java/com/bt/xlt/homework0319/jiabin/JiaBinJudgeShape.java new file mode 100644 index 0000000..26db213 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/jiabin/JiaBinJudgeShape.java @@ -0,0 +1,37 @@ +package com.bt.xlt.homework0319.jiabin; + +import java.util.Scanner; + +/** + * Created by bin.jia on 2016/3/21. + */ +public class JiaBinJudgeShape { + + public void judgeShape(int shape) { + Scanner s = new Scanner(System.in); + switch (shape) { + case 1: + System.out.println("请输入圆形半径:"); + double radius = s.nextDouble(); + JiaBinShape circle = new JiaBinCircle(); + circle.getArea(radius); + break; + case 2: + System.out.println("请输入矩形的两个边长:"); + double length1 = s.nextDouble(); + double length2 = s.nextDouble(); + JiaBinShape square = new JiaBinSquare(); + square.getArea(length1, length2); + break; + case 3: + System.out.println("请输入三角形的底和高:"); + double length = s.nextDouble(); + double height = s.nextDouble(); + JiaBinShape triangle = new JiaBinTriangle(); + triangle.getArea(length, height); + break; + default: + System.out.println("输入数字有误,请输入数字1、2、3!"); + } + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/jiabin/JiaBinShape.java b/src/main/java/com/bt/xlt/homework0319/jiabin/JiaBinShape.java new file mode 100644 index 0000000..4a3fc1c --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/jiabin/JiaBinShape.java @@ -0,0 +1,12 @@ +package com.bt.xlt.homework0319.jiabin; + +/** + * Created by bin.jia on 2016/3/21. + */ +public abstract class JiaBinShape { + public double area; + + public abstract void getArea(double num); + + public abstract void getArea(double num1,double num2); +} diff --git a/src/main/java/com/bt/xlt/homework0319/jiabin/JiaBinShapeTest.java b/src/main/java/com/bt/xlt/homework0319/jiabin/JiaBinShapeTest.java new file mode 100644 index 0000000..e5a08b1 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/jiabin/JiaBinShapeTest.java @@ -0,0 +1,22 @@ +package com.bt.xlt.homework0319.jiabin; + +import java.util.Scanner; + +/** + * Created by bin.jia on 2016/3/21. + * Reviewer: beigui + * Review Date: 2016/3/22 + * Comments: 到目前为止,最符合题意的程序。 + * 改进点:getArea需不需要写两个方法? 好好考虑封装,巧用构造函数 + */ +public class JiaBinShapeTest { + public static void main(String[] args) { + Scanner s = new Scanner(System.in); + System.out.println("圆形:请输入1,矩形:请输入2,三角形:请输入3!"); + + int shape = s.nextInt(); + + JiaBinJudgeShape judge = new JiaBinJudgeShape(); + judge.judgeShape(shape); + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/jiabin/JiaBinSquare.java b/src/main/java/com/bt/xlt/homework0319/jiabin/JiaBinSquare.java new file mode 100644 index 0000000..9a29f3c --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/jiabin/JiaBinSquare.java @@ -0,0 +1,18 @@ +package com.bt.xlt.homework0319.jiabin; + +/** + * Created by bin.jia on 2016/3/21. + */ +public class JiaBinSquare extends JiaBinShape{ + + @Override + public void getArea(double length1, double length2) { + area = length1 * length2; + System.out.println("该矩形的面积为:" + area); + } + + @Override + public void getArea(double num) { + + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/jiabin/JiaBinTriangle.java b/src/main/java/com/bt/xlt/homework0319/jiabin/JiaBinTriangle.java new file mode 100644 index 0000000..905bdcf --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/jiabin/JiaBinTriangle.java @@ -0,0 +1,18 @@ +package com.bt.xlt.homework0319.jiabin; + +/** + * Created by bin.jia on 2016/3/21. + */ +public class JiaBinTriangle extends JiaBinShape { + + @Override + public void getArea(double length, double height) { + area = length * height / 2; + System.out.println("该三角形的面积为:" + area); + } + + @Override + public void getArea(double num) { + + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/jiabin_ref/JiaBinCircle.java b/src/main/java/com/bt/xlt/homework0319/jiabin_ref/JiaBinCircle.java new file mode 100644 index 0000000..db8214f --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/jiabin_ref/JiaBinCircle.java @@ -0,0 +1,30 @@ +package com.bt.xlt.homework0319.jiabin_ref; + +/** + * Created by bin.jia on 2016/3/21. + */ +public class JiaBinCircle extends JiaBinShape { + final double PI = 3.14; + private double radius; + + public JiaBinCircle(double radius){ + this.radius = radius; + } + + @Override + public void getArea() { + area = PI * Math.pow(radius,2); + System.out.println("该圆形的面积为:" + area); + } + +// @Override +// public void getArea(double radius) { +// area = PI * Math.pow(radius,2); +// System.out.println("该圆形的面积为:" + area); +// } +// +// @Override +// public void getArea(double num1, double num2) { +// +// } +} diff --git a/src/main/java/com/bt/xlt/homework0319/jiabin_ref/JiaBinJudgeShape.java b/src/main/java/com/bt/xlt/homework0319/jiabin_ref/JiaBinJudgeShape.java new file mode 100644 index 0000000..0f88836 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/jiabin_ref/JiaBinJudgeShape.java @@ -0,0 +1,39 @@ +package com.bt.xlt.homework0319.jiabin_ref; + + +import java.util.Scanner; + +/** + * Created by bin.jia on 2016/3/21. + */ +public class JiaBinJudgeShape { + + public void judgeShape(int shape) { + Scanner s = new Scanner(System.in); + switch (shape) { + case 1: + System.out.println("请输入圆形半径:"); + double radius = s.nextDouble(); + JiaBinShape circle = new JiaBinCircle(radius); + circle.getArea(); + break; + case 2: + System.out.println("请输入矩形的两个边长:"); + double length1 = s.nextDouble(); + double length2 = s.nextDouble(); + JiaBinShape square = new JiaBinSquare(length1,length2); + square.getArea(); + break; + case 3: + System.out.println("请输入三角形的底和高:"); + double length = s.nextDouble(); + double height = s.nextDouble(); + JiaBinShape triangle = new JiaBinTriangle(length,height); + triangle.getArea(); + break; + default: + System.out.println("输入数字有误,请输入数字1、2、3!"); + + } + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/jiabin_ref/JiaBinShape.java b/src/main/java/com/bt/xlt/homework0319/jiabin_ref/JiaBinShape.java new file mode 100644 index 0000000..32d0386 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/jiabin_ref/JiaBinShape.java @@ -0,0 +1,14 @@ +package com.bt.xlt.homework0319.jiabin_ref; + +/** + * Created by bin.jia on 2016/3/21. + */ +public abstract class JiaBinShape { + public double area; + + public void getArea(){} + +// public abstract void getArea(double num); +// +// public abstract void getArea(double num1,double num2); +} diff --git a/src/main/java/com/bt/xlt/homework0319/jiabin_ref/JiaBinShapeTest.java b/src/main/java/com/bt/xlt/homework0319/jiabin_ref/JiaBinShapeTest.java new file mode 100644 index 0000000..5c107d2 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/jiabin_ref/JiaBinShapeTest.java @@ -0,0 +1,23 @@ +package com.bt.xlt.homework0319.jiabin_ref; + +import java.util.Scanner; + +/** + * Created by bin.jia on 2016/3/21. + * Reviewer: beigui + * Review Date: 2016/3/22 + * Comments: 到目前为止,最符合题意的程序。 + * 改进点:getArea需不需要写两个方法? 好好考虑封装,巧用构造函数 + */ +public class JiaBinShapeTest { + public static void main(String[] args) { + Scanner s = new Scanner(System.in); + System.out.println("圆形:请输入1,矩形:请输入2,三角形:请输入3!"); + + int shape = s.nextInt(); + + JiaBinJudgeShape judge = new JiaBinJudgeShape(); + judge.judgeShape(shape); + + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/jiabin_ref/JiaBinSquare.java b/src/main/java/com/bt/xlt/homework0319/jiabin_ref/JiaBinSquare.java new file mode 100644 index 0000000..482909d --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/jiabin_ref/JiaBinSquare.java @@ -0,0 +1,31 @@ +package com.bt.xlt.homework0319.jiabin_ref; + +/** + * Created by bin.jia on 2016/3/21. + */ +public class JiaBinSquare extends JiaBinShape { + private double length1; + private double length2; + + public JiaBinSquare(double length1,double length2){ + this.length1 = length1; + this.length2 = length2; + } + + @Override + public void getArea() { + area = length1 * length2; + System.out.println("该矩形的面积为:" + area); + } + +// @Override +// public void getArea(double length1, double length2) { +// area = length1 * length2; +// System.out.println("该矩形的面积为:" + area); +// } +// +// @Override +// public void getArea(double num) { +// +// } +} diff --git a/src/main/java/com/bt/xlt/homework0319/jiabin_ref/JiaBinTriangle.java b/src/main/java/com/bt/xlt/homework0319/jiabin_ref/JiaBinTriangle.java new file mode 100644 index 0000000..073c845 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/jiabin_ref/JiaBinTriangle.java @@ -0,0 +1,31 @@ +package com.bt.xlt.homework0319.jiabin_ref; + +/** + * Created by bin.jia on 2016/3/21. + */ +public class JiaBinTriangle extends JiaBinShape { + private double length; + private double height; + + public JiaBinTriangle(double length,double height) { + this.length = length; + this.height = height; + } + + @Override + public void getArea() { + area = length * height / 2; + System.out.println("该三角形的面积为:" + area); + } + +// @Override +// public void getArea(double length, double height) { +// area = length * height / 2; +// System.out.println("该三角形的面积为:" + area); +// } +// +// @Override +// public void getArea(double num) { +// +// } +} diff --git a/src/main/java/com/bt/xlt/homework0319/jiyaping/JyapingCircle .txt b/src/main/java/com/bt/xlt/homework0319/jiyaping/JyapingCircle .txt new file mode 100644 index 0000000..3f47b2c --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/jiyaping/JyapingCircle .txt @@ -0,0 +1,19 @@ +public class JyapingCircle extends JyapingShape{ + + // @Override + // public double getArea() { + // return 0; + // } + + private double radius; //圆形的半径 + + public JyapingCircle(double radius) { + + this.radius = radius; + } + public double getArea(){ + + return Math.PI *Math.pow(radius ,2); + } + +} diff --git a/src/main/java/com/bt/xlt/homework0319/jiyaping/JyapingRectangle .txt b/src/main/java/com/bt/xlt/homework0319/jiyaping/JyapingRectangle .txt new file mode 100644 index 0000000..4e8ab21 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/jiyaping/JyapingRectangle .txt @@ -0,0 +1,19 @@ +package com.shape; + +/** + * Created by Administrator on 2016/3/22. + */ +public class JyapingRectangle extends JyapingShape{ + + private double length;//矩形的长 + private double width; //矩形的宽 + + public JyapingRectangle(double length , double width){ + this.length =length; + this.width =width; + + } + public double getArea(){ //计算矩形的面积 + return length * width; + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/jiyaping/JyapingShape .txt b/src/main/java/com/bt/xlt/homework0319/jiyaping/JyapingShape .txt new file mode 100644 index 0000000..225db24 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/jiyaping/JyapingShape .txt @@ -0,0 +1,14 @@ +package com.shape; + +/** + * Created by jiyaping on 2016/3/22. + */ +public abstract class JyapingShape { + + public String getName(){ + + return this.getClass().getSimpleName();//获得图形的名称 + } + + public abstract double getArea();//获得图形的面积 +} diff --git a/src/main/java/com/bt/xlt/homework0319/jiyaping/JyapingTest .txt b/src/main/java/com/bt/xlt/homework0319/jiyaping/JyapingTest .txt new file mode 100644 index 0000000..d1f7586 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/jiyaping/JyapingTest .txt @@ -0,0 +1,19 @@ +package com.shape; + +/** + * Created by Administrator on 2016/3/23. + */ +public class JyapingTest { + public static void main (String[] args){ + JyapingCircle jc = new JyapingCircle(1);//创建圆形对象并将半径设置为1; + System.out.println("圆形的名称是:" +jc.getName()); + System.out.println("圆形的面积是:" +jc.getArea()); + JyapingRectangle jg = new JyapingRectangle(1,1);//创建矩形对象并将长和宽设置为1g + System.out.println("矩形的名称是:" +jg.getName()); + System.out.println("矩形的面积是:" +jg.getArea()); + + + + + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/lichangxing/LiChangxingAbstractShape.java b/src/main/java/com/bt/xlt/homework0319/lichangxing/LiChangxingAbstractShape.java new file mode 100644 index 0000000..eac8385 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/lichangxing/LiChangxingAbstractShape.java @@ -0,0 +1,11 @@ +package com.bt.xlt.homework0319.lichangxing; + +/** + * Created by LiChangxing on 2016/3/20. + */ +public abstract class LiChangxingAbstractShape { + + + public abstract double getArea(double ... r ); + +} diff --git a/src/main/java/com/bt/xlt/homework0319/lichangxing/LiChangxingSquare.java b/src/main/java/com/bt/xlt/homework0319/lichangxing/LiChangxingSquare.java new file mode 100644 index 0000000..be453fb --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/lichangxing/LiChangxingSquare.java @@ -0,0 +1,16 @@ +package com.bt.xlt.homework0319.lichangxing; + +/** + * Created by LiChangxing on 2016/3/20. + */ +public class LiChangxingSquare extends LiChangxingAbstractShape { + @Override + public double getArea( double... r ) { + double area = 1; + for (double arr : r) { + area *= arr ; + } + return area; + } + +} diff --git a/src/main/java/com/bt/xlt/homework0319/lichangxing/LiChangxingTestShapeDemo.java b/src/main/java/com/bt/xlt/homework0319/lichangxing/LiChangxingTestShapeDemo.java new file mode 100644 index 0000000..cada4db --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/lichangxing/LiChangxingTestShapeDemo.java @@ -0,0 +1,27 @@ +package com.bt.xlt.homework0319.lichangxing; + +/** + * Created by LiChangxing on 2016/3/20. + * Reviewer: beigui + * Review Date: 2016/3/21 + * Comments: 用构造函数初始化属性值,会比可变长度的参数要好 + * 因为可变长度的参数,你无法限定使用时的问题,检查会增多。在一个系统里,需要做限制的,用语言去限制最有效最可靠,人的输入都是不可控的。 + */ +public class LiChangxingTestShapeDemo { + public static void main( String[] args ) { + + LiChangxingAbstractShape circle = new LichanxingCircle(); + LiChangxingAbstractShape square = new LiChangxingSquare(); + LiChangxingAbstractShape triangle = new LiChangxingTriangle(); + + //求圆的面积 + System.out.println("圆的面积为:" + circle.getArea(4)); + + //求矩形的面积 + System.out.println("矩形的面积:" + square.getArea(5,7)); + + //求三角形面积 + System.out.println("三角形面积为:" + triangle.getArea(5,6)); + + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/lichangxing/LiChangxingTriangle.java b/src/main/java/com/bt/xlt/homework0319/lichangxing/LiChangxingTriangle.java new file mode 100644 index 0000000..d9fd60a --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/lichangxing/LiChangxingTriangle.java @@ -0,0 +1,15 @@ +package com.bt.xlt.homework0319.lichangxing; + +/** + * Created by LiChangxing on 2016/3/20. + */ +public class LiChangxingTriangle extends LiChangxingAbstractShape { + @Override + public double getArea( double... r ) { + double area =1 ; + for (double arr : r) { + area *= arr ; + } + return area/2; + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/lichangxing/LichanxingCircle.java b/src/main/java/com/bt/xlt/homework0319/lichangxing/LichanxingCircle.java new file mode 100644 index 0000000..ec46ec0 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/lichangxing/LichanxingCircle.java @@ -0,0 +1,14 @@ +package com.bt.xlt.homework0319.lichangxing; + +/** + * Created by LiChangxing on 2016/3/20. + */ +import static java.lang.Math.*; +public class LichanxingCircle extends LiChangxingAbstractShape { + + @Override + public double getArea(double ... arr) { + double r = arr[0]; + return 2 * PI * r; + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/lidongkun/Circle.java b/src/main/java/com/bt/xlt/homework0319/lidongkun/Circle.java new file mode 100644 index 0000000..c301e2b --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/lidongkun/Circle.java @@ -0,0 +1,22 @@ +package com.bt.xlt.homework0319.lidongkun; + +import java.util.Scanner; + +/** + * Created by lidongkun on 2016/3/21. + */ +public class Circle extends Shape { + public void getArea() { + double area = 0; + Scanner cl = new Scanner(System.in); + System.out.println("请输入该园的半径:"); + double radii = cl.nextDouble(); + + if(radii > 0) { + area = radii * radii *3.14; + System.out.println("园的面积为:" + area); + }else { + System.out.println("园的半径不能小于等于零"); + } + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/lidongkun/Master.java b/src/main/java/com/bt/xlt/homework0319/lidongkun/Master.java new file mode 100644 index 0000000..e61ddff --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/lidongkun/Master.java @@ -0,0 +1,11 @@ +package com.bt.xlt.homework0319.lidongkun; + +/** + * Created by lidongkun on 2016/3/22. + */ +public class Master { + public void getAreas(Shape shape) { + System.out.println("输入您需要获取面积的条件:"); + shape.getArea(); + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/lidongkun/Rectang.java b/src/main/java/com/bt/xlt/homework0319/lidongkun/Rectang.java new file mode 100644 index 0000000..2075a92 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/lidongkun/Rectang.java @@ -0,0 +1,26 @@ +package com.bt.xlt.homework0319.lidongkun; + +import java.util.Scanner; + +/** + * Created by lidongkun on 2016/3/21. + */ +public class Rectang extends Shape{ + public void getArea() { + double area = 0; + Scanner sc = new Scanner(System.in); + System.out.println("请输入矩形的长:"); + double a = sc.nextDouble(); + System.out.println("请输入矩形的宽:"); + double b = sc.nextDouble(); + + if(a > 0 && b > 0) { + area = a * b; + System.out.println("矩形的面积为:" + area); + }else { + System.out.println("矩形的长和宽都不能小于零."); + } + + } + +} diff --git a/src/main/java/com/bt/xlt/homework0319/lidongkun/Shape.java b/src/main/java/com/bt/xlt/homework0319/lidongkun/Shape.java new file mode 100644 index 0000000..5f9b9c3 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/lidongkun/Shape.java @@ -0,0 +1,10 @@ +package com.bt.xlt.homework0319.lidongkun; + +import java.util.Scanner; + +/** + * Created by lidongkun on 2016/3/21. + */ +public abstract class Shape { + public abstract void getArea(); +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0319/lidongkun/ShapeArea.java b/src/main/java/com/bt/xlt/homework0319/lidongkun/ShapeArea.java new file mode 100644 index 0000000..cb86925 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/lidongkun/ShapeArea.java @@ -0,0 +1,27 @@ +package com.bt.xlt.homework0319.lidongkun; + +/** + * Created by lidongkun on 2016/3/21. + * Reviewer: beigui + * Review Date: 2016/3/22 + */ +public class ShapeArea { + public static void main(String[] args) { + int select = Integer.parseInt(args[0]); + Master master = new Master(); + + switch(select) { + case 1: + master.getAreas(new Circle()); + break; + case 2: + master.getAreas(new Triangle()); + break; + case 3: + master.getAreas(new Rectang()); + break; + default: + System.out.println("选择错误"); + } + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/lidongkun/Triangle.java b/src/main/java/com/bt/xlt/homework0319/lidongkun/Triangle.java new file mode 100644 index 0000000..95a3ad7 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/lidongkun/Triangle.java @@ -0,0 +1,26 @@ +package com.bt.xlt.homework0319.lidongkun; + +import java.util.Scanner; + +/** + * Created by lidongkun on 2016/3/21. + */ +public class Triangle extends Shape { + public void getArea() { + double area = 0; + Scanner sc = new Scanner(System.in); + System.out.println("三角形的底长为:"); + double a = sc.nextDouble(); + System.out.println("三角形的高为:"); + double b = sc.nextDouble(); + + if(a > 0 && b > 0) { + area = a * b / 2; + System.out.println("三角形的面积为" + area); + }else { + System.out.println("三角形的底和高均不能为0."); + } + + + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/liwen/Circle.java b/src/main/java/com/bt/xlt/homework0319/liwen/Circle.java new file mode 100644 index 0000000..5db73f3 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/liwen/Circle.java @@ -0,0 +1,18 @@ +package com.bt.xlt.homework0319.liwen; + +/** + * Created by wen.li on 16/3/20. + */ +public class Circle extends Shape { + public float r; + + public Circle (float r) { + this.r = r; + } + + @Override + public void getArea() { + System.out.print("圆的面积为:"); + System.out.println(Math.PI*r*r); + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/liwen/LiWenGetArea.java b/src/main/java/com/bt/xlt/homework0319/liwen/LiWenGetArea.java new file mode 100644 index 0000000..ac4ceff --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/liwen/LiWenGetArea.java @@ -0,0 +1,39 @@ +package com.bt.xlt.homework0319.liwen; + +import java.util.Scanner; + +/** + * Created by wen.li on 16/3/20. + * Reviewer: beigui + * Review Date: 2016/3/23 + */ +public class LiWenGetArea { + public static void main(String[] args) { + + System.out.println("请选择图形Circle、Square、Triangle:"); + Scanner num = new Scanner(System.in); + String shape = num.nextLine(); + + if (shape.equals("Circle")) { + System.out.println("圆半径:"); + float r = num.nextFloat(); + Shape circle = new Circle(r); + circle.getArea(); + + } else if (shape.equals("Square")) { + System.out.println("边长:"); + float length = num.nextFloat(); + float width = num.nextFloat(); + Shape square = new Square(length, width); + square.getArea(); + + } else { + System.out.println("边长:"); + float a = num.nextFloat(); + float b = num.nextFloat(); + float c = num.nextFloat(); + Shape triangle = new Triangle(a, b, c); + triangle.getArea(); + } + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/liwen/Shape.java b/src/main/java/com/bt/xlt/homework0319/liwen/Shape.java new file mode 100644 index 0000000..c39c21e --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/liwen/Shape.java @@ -0,0 +1,10 @@ +package com.bt.xlt.homework0319.liwen; + +/** + * Created by wen.li on 16/3/20. + * 定义一个图形父类abstract Shape,包含求面积的方法getArea(),扩展子类:圆Circle、矩形Square、三角形Triangle,分别重写求面积方法。 + * 用户可以选择输入某一个多边形,输入数据后,求出这个多边形的面积 + */ + public abstract class Shape { + public abstract void getArea(); +} diff --git a/src/main/java/com/bt/xlt/homework0319/liwen/Square.java b/src/main/java/com/bt/xlt/homework0319/liwen/Square.java new file mode 100644 index 0000000..10cb2c7 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/liwen/Square.java @@ -0,0 +1,20 @@ +package com.bt.xlt.homework0319.liwen; + +/** + * Created by wen.li on 16/3/21. + */ +public class Square extends Shape { + private float lenght; + private float width; + + public Square (float lenght, float width) { + this.lenght = lenght; + this.width = width; + } + + @Override + public void getArea() { + System.out.println(lenght*width); + + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/liwen/Triangle.java b/src/main/java/com/bt/xlt/homework0319/liwen/Triangle.java new file mode 100644 index 0000000..4d218cd --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/liwen/Triangle.java @@ -0,0 +1,31 @@ +package com.bt.xlt.homework0319.liwen; + +/** + * Created by wen.li on 16/3/21. + */ +public class Triangle extends Shape { + private float a; + private float b; + private float c; + + public Triangle (float a, float b, float c) { + this.a = a; + this.b = b; + this.c = c; + } + + @Override + public void getArea() { + if (a > 0 && b > 0 && c > 0) { + if (a + b > c && a + c > b && b + c > a) { + float p = (a + b + c)/2; + double s = Math.sqrt((p-a)*(p-b)*(p-c)); + System.out.println(s); + } else { + System.out.println("输入三条边不能组成三角形"); + } + } else { + System.out.println("false , 三条边长度有一个或多个小于等于0"); + } + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/maxiaoyu/Circle.java b/src/main/java/com/bt/xlt/homework0319/maxiaoyu/Circle.java new file mode 100644 index 0000000..ac0a773 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/maxiaoyu/Circle.java @@ -0,0 +1,18 @@ +package com.bt.xlt.homework0319.maxiaoyu; + +/** + * Created by maxy on 2016/3/23. + */ +public class Circle extends Shape { + + protected double r; + Circle( double r ) { + this.shapetype = "圆形"; + this.r = r; + } + + protected double getArea() { + this.area = Math.PI * r * r; + return area; + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/maxiaoyu/ClassDemo.java b/src/main/java/com/bt/xlt/homework0319/maxiaoyu/ClassDemo.java new file mode 100644 index 0000000..f8a8e0c --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/maxiaoyu/ClassDemo.java @@ -0,0 +1,16 @@ +package com.bt.xlt.homework0319.maxiaoyu; + +/** + * Created by maxy on 2016/3/23. + * Reviewer: beigui + * Review Date: 2016/3/23 + */ +public class ClassDemo { + public static void main( String[] args ) { + + Show s1 = new Show(); + s1.showArea( new Triangle( 1.233, 3.222 ) ); + s1.showArea( new Circle( 1 ) ); + s1.showArea( new Square( 1.5, 2 ) ); + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/maxiaoyu/ClassDemoRef.java b/src/main/java/com/bt/xlt/homework0319/maxiaoyu/ClassDemoRef.java new file mode 100644 index 0000000..a71bd76 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/maxiaoyu/ClassDemoRef.java @@ -0,0 +1,62 @@ +package com.bt.xlt.homework0319.maxiaoyu; + +/** + * Created by maxy on 2016/3/23. + */ +public class ClassDemoRef { + public static void main( String[] args ) { + + int p = Integer.parseInt(args[0]); + Show s1 = new Show(); + + switch ( p ) { + case 0: + System.out.println( "请在第一行输入形状:1、圆形 2、矩形 3、三角形" ); + break; + + case 1: + double r1 = Integer.parseInt(args[1]); + if ( r1 == 0 ) { + System.out.println( "请在第二行输入圆形的半径" ); + } + else if ( r1 > 0 ) { + s1.showArea( new Circle( r1 ) ); + } + else { + System.out.println( "圆形的半径必须是正数,请重新输入" ); + } + break; + + case 2: + double a1 = Integer.parseInt(args[1]); + double b1 = Integer.parseInt(args[2]); + if ( a1 == 0 || b1 == 0 ) { + System.out.println( "请在第二行输入矩形的长,在第三行输入矩形的宽" ); + } + else if ( a1 > 0 && b1 > 0 ){ + s1.showArea( new Square( a1, b1 ) ); + } + else { + System.out.println( "矩形的长和宽必须是正数,请重新输入" ); + } + break; + + case 3: + double d1 = Integer.parseInt(args[1]); + double h1 = Integer.parseInt(args[2]); + if ( d1 == 0 || h1 == 0 ) { + System.out.println( "请在第二行输入三角形的底,在第三行输入三角形的高" ); + } + else if ( d1 > 0 && h1 > 0 ){ + s1.showArea( new Triangle( d1, h1 ) ); + } + else { + System.out.println( "三角形的底和高必须是正数,请重新输入" ); + } + break; + + default: + System.out.println( "无法判断形状,请重新输入!" ); + } + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/maxiaoyu/Shape.java b/src/main/java/com/bt/xlt/homework0319/maxiaoyu/Shape.java new file mode 100644 index 0000000..73f97a0 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/maxiaoyu/Shape.java @@ -0,0 +1,12 @@ +package com.bt.xlt.homework0319.maxiaoyu; + +/** + * Created by maxy on 2016/3/23. + */ +public abstract class Shape { + + protected String shapetype; + protected double area; + + protected abstract double getArea(); +} diff --git a/src/main/java/com/bt/xlt/homework0319/maxiaoyu/Show.java b/src/main/java/com/bt/xlt/homework0319/maxiaoyu/Show.java new file mode 100644 index 0000000..f208bdb --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/maxiaoyu/Show.java @@ -0,0 +1,12 @@ +package com.bt.xlt.homework0319.maxiaoyu; + +/** + * Created by maxy on 2016/3/23. + */ +public class Show { + + protected void showArea( Shape shape ) { + System.out.println( shape.shapetype + "的面积是:" + shape.getArea() ); + } +} + diff --git a/src/main/java/com/bt/xlt/homework0319/maxiaoyu/Square.java b/src/main/java/com/bt/xlt/homework0319/maxiaoyu/Square.java new file mode 100644 index 0000000..051c367 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/maxiaoyu/Square.java @@ -0,0 +1,20 @@ +package com.bt.xlt.homework0319.maxiaoyu; + +/** + * Created by maxy on 2016/3/23. + */ +public class Square extends Shape { + + protected double a; + protected double b; + Square( double a, double b ) { + this.shapetype = "矩形"; + this.a = a; + this.b = b; + } + + protected double getArea() { + this.area = a * b; + return area; + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/maxiaoyu/Triangle.java b/src/main/java/com/bt/xlt/homework0319/maxiaoyu/Triangle.java new file mode 100644 index 0000000..1826397 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/maxiaoyu/Triangle.java @@ -0,0 +1,20 @@ +package com.bt.xlt.homework0319.maxiaoyu; + +/** + * Created by maxy on 2016/3/23. + */ +public class Triangle extends Shape { + + protected double a; + protected double h; + Triangle( double a, double h ) { + this.shapetype = "三角形"; + this.a = a; + this.h = h; + } + + protected double getArea() { + this.area = 0.5 * a * h; + return area; + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/mijuan/Circle.java b/src/main/java/com/bt/xlt/homework0319/mijuan/Circle.java new file mode 100644 index 0000000..8a1619c --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/mijuan/Circle.java @@ -0,0 +1,13 @@ +package com.bt.xlt.homework0319.mijuan; + +/** + * Created by mijua on 3/19/2016. + */ +public class Circle extends abstractShape { + @Override + public void getArea() { + System.out.println("圆的面积为:PI*r*r"); + } +} + + diff --git a/src/main/java/com/bt/xlt/homework0319/mijuan/MiJuanArea.java b/src/main/java/com/bt/xlt/homework0319/mijuan/MiJuanArea.java new file mode 100644 index 0000000..09511f9 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/mijuan/MiJuanArea.java @@ -0,0 +1,23 @@ +package com.bt.xlt.homework0319.mijuan; + +/** + * Created by mijua on 3/19/2016. + * Reviewer: beigui + * Review Date: 2016/3/21 + */ +public class MiJuanArea { + public static void main(String[] args) { + abstractShape circle = new Circle(); + abstractShape square = new Square(); + abstractShape triangle = new Triangle(); + + /**圆的面积*/ + circle.getArea(); + + /**矩形面积*/ + square.getArea(); + + /**三角形面积*/ + triangle.getArea(); + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/mijuan/Square.java b/src/main/java/com/bt/xlt/homework0319/mijuan/Square.java new file mode 100644 index 0000000..585e7fc --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/mijuan/Square.java @@ -0,0 +1,11 @@ +package com.bt.xlt.homework0319.mijuan; + +/** + * Created by mijua on 3/19/2016. + */ +public class Square extends abstractShape { + @Override + public void getArea() { + System.out.println("矩形面积为:长*宽"); + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/mijuan/Triangle.java b/src/main/java/com/bt/xlt/homework0319/mijuan/Triangle.java new file mode 100644 index 0000000..d5c0e1e --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/mijuan/Triangle.java @@ -0,0 +1,11 @@ +package com.bt.xlt.homework0319.mijuan; + +/** + * Created by mijua on 3/19/2016. + */ +public class Triangle extends abstractShape { + @Override + public void getArea() { + System.out.println("三角形的面积为:1/2*底*高"); + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/mijuan/abstractShape.java b/src/main/java/com/bt/xlt/homework0319/mijuan/abstractShape.java new file mode 100644 index 0000000..1048593 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/mijuan/abstractShape.java @@ -0,0 +1,10 @@ +package com.bt.xlt.homework0319.mijuan; + +/** + * Created by mijua on 3/19/2016. + */ +public abstract class abstractShape { + //求图形面积 + public abstract void getArea(); +} + diff --git a/src/main/java/com/bt/xlt/homework0319/qizhi/Circle.java b/src/main/java/com/bt/xlt/homework0319/qizhi/Circle.java new file mode 100644 index 0000000..aeaaaba --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/qizhi/Circle.java @@ -0,0 +1,37 @@ +package com.bt.xlt.homework0319.qizhi; + +/** + * 子类:圆形,继承父类:Shape,并重写面积 + * + * Created by QZ on 2016/3/23. + */ +public class Circle extends Shape { + /** + * 常量PI + */ + private final double PI = 3.14; + /** + * 圆的半径 + */ + private double r; + + + /** + * 构造方法 + * + * @param r 圆的半径 + */ + public Circle(double r) { + this.r = r; + } + + /** + * 计算圆的面积 + * + * @return 圆的面积 + */ + @Override + public double getArea() { + return r * r * PI; + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/qizhi/Shape.java b/src/main/java/com/bt/xlt/homework0319/qizhi/Shape.java new file mode 100644 index 0000000..a62ba40 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/qizhi/Shape.java @@ -0,0 +1,12 @@ +package com.bt.xlt.homework0319.qizhi; + +/** + * 抽象父类:图形 + * + * * Created by QZ on 2016/3/23. + */ +public abstract class Shape { + + public abstract double getArea(); + +} diff --git a/src/main/java/com/bt/xlt/homework0319/qizhi/Square.java b/src/main/java/com/bt/xlt/homework0319/qizhi/Square.java new file mode 100644 index 0000000..fd9766e --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/qizhi/Square.java @@ -0,0 +1,38 @@ +package com.bt.xlt.homework0319.qizhi; + +/** + * 子类:矩形,继承父类:Shape,并重写面积 + * + * Created by QZ on 2016/3/23. + */ +public class Square extends Shape { + /** + * 矩形长 + */ + private double length; + /** + * 矩形宽 + */ + private double width; + + /** + * 构造函数 + * + * @param length 矩形长 + * @param width 矩形宽 + */ + public Square(double length, double width) { + this.length = length; + this.width = width; + } + + /** + * 功能:计算矩形面积 + * + * @return 矩形面积 + */ + @Override + public double getArea() { + return length * width; + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/qizhi/TestShape.java b/src/main/java/com/bt/xlt/homework0319/qizhi/TestShape.java new file mode 100644 index 0000000..9bb53c7 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/qizhi/TestShape.java @@ -0,0 +1,58 @@ +package com.bt.xlt.homework0319.qizhi; + +import java.util.Scanner; + +/** + * 功能:用户可以选择输入某一个多边形,输入数据后,求出这个多边形的面积 + * + * Created by QZ on 2016/3/23. + * Reviewer: beigui + * Review Date: 2016/3/25 + */ +public class TestShape { + public static void main(String[] args) { + int num = 0; + boolean flag = true; + Scanner in = null; + while (flag) { + System.out.println("请输入相应的数字进行不同多边形运算【1:圆形 2:矩形 3:三角形】"); + in = new Scanner(System.in); + try { + num = in.nextInt(); + if (num != 1 && num != 2 && num != 3) { + throw new Exception(); + } + flag = false; + } catch (Exception e) { + System.out.println("输入错误,请重新输入"); + } + } + + // int num = in.nextInt(); + switch (num) { + case 1: + System.out.println("请输入圆的半径:"); + double r = in.nextDouble(); + Shape circle = new Circle(r); + System.out.println("当圆的半径是:" + r + " 时——>圆的面积是:" + circle.getArea()); + break; + case 2: + System.out.println("请输入矩形的长和宽:"); + double length = in.nextDouble(); + double width = in.nextDouble(); + Shape square = new Square(length, width); + System.out.println("当矩形的长是:" + length + ",宽是:" + width + " 时——>矩形的面积是:" + square.getArea()); + break; + case 3: + System.out.println("请输入三角形的底边长和高:"); + double bottom = in.nextDouble(); + double height = in.nextDouble(); + Shape triangle = new Triangle(bottom, height); + System.out.println("当三角形的底边长是:" + bottom + ",高是:" + height + " 时——>三角形的面积是:" + triangle.getArea()); + break; + default: + System.out.println("输入有误,请重新输入"); + + } + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/qizhi/Triangle.java b/src/main/java/com/bt/xlt/homework0319/qizhi/Triangle.java new file mode 100644 index 0000000..8c68ba6 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/qizhi/Triangle.java @@ -0,0 +1,38 @@ +package com.bt.xlt.homework0319.qizhi; + +/** + * 子类:三角形,继承父类:Shape,并重写面积 + * + * Created by QZ on 2016/3/23. + */ +public class Triangle extends Shape { + /** + * 三角形底边长 + */ + private double bottom; + /** + * 三角形高 + */ + private double height; + + /** + * 构造方法 + * + * @param bottom 三角形底边长 + * @param height 三角形高 + */ + public Triangle(double bottom, double height) { + this.bottom = bottom; + this.height = height; + } + + /** + * 计算三角形的面积 + * + * @return 三角形面积 + */ + @Override + public double getArea() { + return bottom * height / 2; + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/wangxiaojia/Wangxiaojia_Shape.java b/src/main/java/com/bt/xlt/homework0319/wangxiaojia/Wangxiaojia_Shape.java new file mode 100644 index 0000000..a0e084f --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/wangxiaojia/Wangxiaojia_Shape.java @@ -0,0 +1,28 @@ +package com.bt.xlt.homework0319.wangxiaojia; + +/** + * Created by 王小佳 on 2016/3/21. + * 定义一个图形父类abstract Shape,包含求面积的方法getArea(),扩展子类:圆Circle、矩形Square、三角形Triangle,分别重写求面积方法。 + * 用户可以选择输入某一个多边形,输入数据后,求出这个多边形的面积 + * Reviewer: beigui + * Review Date: 2016/3/25 + */ +public abstract class Wangxiaojia_Shape { + public static void main(String[] args) { + final float PI=3.14159f; + wangxiaojia_Area areaCir = new wangxiaojia_Circle(10); + float circle = areaCir.getArea(); + System.out.println("图形的名称是:"+areaCir.getName()); + System.out.println("图形的面积是:"+ circle); + + wangxiaojia_Area areaSq = new wangxiaojia_Square(10,20); + float square = areaSq.getArea(); + System.out.println("图形的名称是:"+areaSq.getName()); + System.out.println("图形的面积:"+ square); + + wangxiaojia_Area areaTr = new wangxiaojia_Triangle(10,20); + float Trianle = areaTr.getArea(); + System.out.println("图形的名称是:"+ areaTr.getName()); + System.out.println("图形的面积是:"+ Trianle); + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/wangxiaojia/wangxiaojia_Area.java b/src/main/java/com/bt/xlt/homework0319/wangxiaojia/wangxiaojia_Area.java new file mode 100644 index 0000000..4560069 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/wangxiaojia/wangxiaojia_Area.java @@ -0,0 +1,11 @@ +package com.bt.xlt.homework0319.wangxiaojia; + +/** + * Created by 王小佳 on 2016/3/21. + */ +public abstract class wangxiaojia_Area { + public String getName(){ + return this.getClass().getSimpleName(); + } + public abstract float getArea(); +} diff --git a/src/main/java/com/bt/xlt/homework0319/wangxiaojia/wangxiaojia_Circle.java b/src/main/java/com/bt/xlt/homework0319/wangxiaojia/wangxiaojia_Circle.java new file mode 100644 index 0000000..9d8b068 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/wangxiaojia/wangxiaojia_Circle.java @@ -0,0 +1,18 @@ +package com.bt.xlt.homework0319.wangxiaojia; + +/** + * Created by 王小佳 on 2016/3/21. + */ +public class wangxiaojia_Circle extends wangxiaojia_Area { + float PI =3.14159f; + private float r; + public wangxiaojia_Circle(float r){ //获得圆形的半径 + this.r=r; + } + @Override + public float getArea() { + float area = PI*r*r; + return area; + } + +} diff --git a/src/main/java/com/bt/xlt/homework0319/wangxiaojia/wangxiaojia_Square.java b/src/main/java/com/bt/xlt/homework0319/wangxiaojia/wangxiaojia_Square.java new file mode 100644 index 0000000..fae7f78 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/wangxiaojia/wangxiaojia_Square.java @@ -0,0 +1,22 @@ +package com.bt.xlt.homework0319.wangxiaojia; + +/** + * Created by 王小佳 on 2016/3/21. + */ +public class wangxiaojia_Square extends wangxiaojia_Area { + private float l; + private float m; + public wangxiaojia_Square(float l, float m){ //获得矩形的长和宽 + this.l=l; + this.m=m; + } + @Override + + public float getArea() { + + float area = l*m; + return area; + } +} + + diff --git a/src/main/java/com/bt/xlt/homework0319/wangxiaojia/wangxiaojia_Triangle.java b/src/main/java/com/bt/xlt/homework0319/wangxiaojia/wangxiaojia_Triangle.java new file mode 100644 index 0000000..fd8107c --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/wangxiaojia/wangxiaojia_Triangle.java @@ -0,0 +1,18 @@ +package com.bt.xlt.homework0319.wangxiaojia; + +/** + * Created by 王小佳 on 2016/3/21. + */ +public class wangxiaojia_Triangle extends wangxiaojia_Area { + private float a; + private float b; + public wangxiaojia_Triangle(float a, float b){ //获得三角形的长和宽 + this.a=a; + this.b=b; + } + @Override + public float getArea() { + float area = a*b/2; + return area; + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/weiyuxin/WeiYuXinArea.java b/src/main/java/com/bt/xlt/homework0319/weiyuxin/WeiYuXinArea.java new file mode 100644 index 0000000..619aee8 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/weiyuxin/WeiYuXinArea.java @@ -0,0 +1,69 @@ +package com.bt.xlt.homework0319.weiyuxin; + +import java.util.Scanner; + +/** + * Created by yuxinwei on 2016/3/22. + * 功能:定义一个图形父类abstract Shape,包含求面积的方法getArea() + * 扩展子类:圆Circle、矩形Square、三角形Triangle,分别重写求面积方法 + * Reviewer: beigui + * Review Date: 2016/3/22 + * Comments: 抽象类的定义,因为他不知道应该怎么样去实现这个功能,才抽象了,把权力下发到子类中实现。而不是所有的东西都在自己这做。 + */ +abstract class Shape{ + double area; + double r; + double width; + double length; + double height; + double bottom; + public void valueCircle(double r){ + this.r = r; + } + public void valueSquare(double width,double length){ + this.width = width; + this.length = length; + } + public void valueTriangle(double height,double bottom){ + this.height = height; + this.bottom = bottom; + } + abstract void getArea(); +} +class Circle extends Shape{ + void getArea(){ + System.out.println("请输入圆形的半径: "); + Scanner s = new Scanner(System.in); + super.valueCircle(s.nextDouble()); + super.area = 3.14*super.r*super.r; + System.out.println("圆的面积是: "+super.area); + } + } +class Square extends Shape{ + void getArea(){ + System.out.println("请输入矩形的宽度和长度: "); + Scanner s = new Scanner(System.in); + super.valueSquare(s.nextDouble(),s.nextDouble()); + super.area = super.width* super.length; + System.out.println("矩形的面积是: "+super.area); + } +} +class Triangle extends Shape{ + void getArea(){ + System.out.println("请输入三角形的高和底: "); + Scanner s = new Scanner(System.in); + super.valueTriangle(s.nextDouble(),s.nextDouble()); + super.area = 0.5*super.height*super.bottom; + System.out.println("三角形的面积是: "+super.area); + } +} +public class WeiYuXinArea{ + public static void main(String[] args) { + Circle cir = new Circle(); + cir.getArea(); + Square squ = new Square(); + squ.getArea(); + Triangle tri = new Triangle(); + tri.getArea(); + } +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0319/xiaoma/XiaomaCircle.java b/src/main/java/com/bt/xlt/homework0319/xiaoma/XiaomaCircle.java new file mode 100644 index 0000000..55a47d0 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/xiaoma/XiaomaCircle.java @@ -0,0 +1,36 @@ +package com.bt.xlt.homework0319.xiaoma; +public class XiaomaCircle extends XiaomaShape{ + + private double Pai=3.14; + private double r; + + public XiaomaCircle(double r){ + this.r = r; + } + + public double getPai() { + return Pai; + } + + public void setPai(double pai) { + Pai = pai; + } + + public double getR() { + return r; + } + + public void setR(double r) { + this.r = r; + } + + @Override + public void getArea() { + if(this.r<=0){ + System.out.println("半径不能小于等于0,请重新构建!"); + }else{ + System.out.println("圆形的面积为:"+Pai * Math.pow(r, 2)); + } + } + +} diff --git a/src/main/java/com/bt/xlt/homework0319/xiaoma/XiaomaShape.java b/src/main/java/com/bt/xlt/homework0319/xiaoma/XiaomaShape.java new file mode 100644 index 0000000..9d73161 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/xiaoma/XiaomaShape.java @@ -0,0 +1,10 @@ +package com.bt.xlt.homework0319.xiaoma; +/* + * Create person xiaoma date:2016-03-21 + */ + +public abstract class XiaomaShape { + + public abstract void getArea(); + +} diff --git a/src/main/java/com/bt/xlt/homework0319/xiaoma/XiaomaSquare.java b/src/main/java/com/bt/xlt/homework0319/xiaoma/XiaomaSquare.java new file mode 100644 index 0000000..32f9519 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/xiaoma/XiaomaSquare.java @@ -0,0 +1,40 @@ +package com.bt.xlt.homework0319.xiaoma; + +public class XiaomaSquare extends XiaomaShape{ + + private double Longe; + private double wide; + + public XiaomaSquare(double Longe,double wide){ + this.Longe = Longe; + this.wide = wide; + } + + public double getLonge() { + return Longe; + } + + public void setLonge(double longe) { + Longe = longe; + } + + public double getWide() { + return wide; + } + + public void setWide(double wide) { + this.wide = wide; + } + + @Override + public void getArea() { + if( this.Longe<=0||this.wide<=0){ + System.out.println("无法构成矩形,请核对后重新构建!"); + }else{ + System.out.println("矩形的面积为:"+this.Longe * this.wide); + } + + } + + +} diff --git a/src/main/java/com/bt/xlt/homework0319/xiaoma/XiaomaTestDemo.java b/src/main/java/com/bt/xlt/homework0319/xiaoma/XiaomaTestDemo.java new file mode 100644 index 0000000..761fdd3 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/xiaoma/XiaomaTestDemo.java @@ -0,0 +1,23 @@ +package com.bt.xlt.homework0319.xiaoma; + +/** + * Reviewer: beigui + * Review Date: 2016/3/21 + */ +public class XiaomaTestDemo { + + public static void main(String[] args) { + + XiaomaSquare sq = new XiaomaSquare(2, 4.3); + sq.setLonge(5); + sq.getArea(); + + XiaomaCircle c =new XiaomaCircle(2); + c.getArea(); + + XiaomaTriangle t =new XiaomaTriangle(2, 4); + t.getArea(); + + } + +} diff --git a/src/main/java/com/bt/xlt/homework0319/xiaoma/XiaomaTriangle.java b/src/main/java/com/bt/xlt/homework0319/xiaoma/XiaomaTriangle.java new file mode 100644 index 0000000..6a6e461 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/xiaoma/XiaomaTriangle.java @@ -0,0 +1,40 @@ +package com.bt.xlt.homework0319.xiaoma; + +public class XiaomaTriangle extends XiaomaShape{ + + private double height; + private double bottom; + + public XiaomaTriangle(double height,double bottom){ + + this.height = height; + this.bottom = bottom; + } + + public double getHeight() { + return height; + } + + public void setHeight(double height) { + this.height = height; + } + + public double getBottom() { + return bottom; + } + + public void setBottom(double bottom) { + this.bottom = bottom; + } + + @Override + public void getArea() { + if(this.height<=0||this.bottom<=0){ + System.out.println("无法构成三角形,请重新构建"); + }else{ + System.out.println("三角形的面积为:"+(this.height * this.bottom)/2); + } + + } + +} diff --git a/src/main/java/com/bt/xlt/homework0319/xueguiyang/XueguiyangCircle.java b/src/main/java/com/bt/xlt/homework0319/xueguiyang/XueguiyangCircle.java new file mode 100644 index 0000000..d0606a1 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/xueguiyang/XueguiyangCircle.java @@ -0,0 +1,19 @@ +package com.bt.xlt.homework0319.xueguiyang; + +/** + * Created by xueguiyang on 16-3-21. + */ +public class XueguiyangCircle extends XueguiyangShape{ + private static final double PI = 3.14; + private double radius; + + XueguiyangCircle(double r){ + radius = r; + } + @Override + public void getArea() { + System.out.println("圆形的面积: "+ PI * radius * radius); + + } + +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0319/xueguiyang/XueguiyangShape.java b/src/main/java/com/bt/xlt/homework0319/xueguiyang/XueguiyangShape.java new file mode 100644 index 0000000..6b7cb17 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/xueguiyang/XueguiyangShape.java @@ -0,0 +1,8 @@ +package com.bt.xlt.homework0319.xueguiyang; + +/** + * Created by xueguiyang on 16-3-21. + */ +public abstract class XueguiyangShape { + public abstract void getArea(); +} diff --git a/src/main/java/com/bt/xlt/homework0319/xueguiyang/XueguiyangSquare.java b/src/main/java/com/bt/xlt/homework0319/xueguiyang/XueguiyangSquare.java new file mode 100644 index 0000000..27da764 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/xueguiyang/XueguiyangSquare.java @@ -0,0 +1,21 @@ +package com.bt.xlt.homework0319.xueguiyang; + +/** + * Created by xueguiyang on 16-3-21. + */ +public class XueguiyangSquare extends XueguiyangShape { + private double length; + private double width; + + XueguiyangSquare(double l,double w){ + length = l; + width = w; + } + + @Override + public void getArea() { + System.out.println("长方形的面积:"+ (length + width) * 2); + } + + +} diff --git a/src/main/java/com/bt/xlt/homework0319/xueguiyang/XueguiyangTestShape.java b/src/main/java/com/bt/xlt/homework0319/xueguiyang/XueguiyangTestShape.java new file mode 100644 index 0000000..d18e92b --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/xueguiyang/XueguiyangTestShape.java @@ -0,0 +1,20 @@ +package com.bt.xlt.homework0319.xueguiyang; + +/** + * Created by xueguiyang on 16-3-21. + * Reviewer: beigui + * Review Date: 2016/3/21 + * Comments: 构造函数的访问范围.当构造函数是默认的访问权限时,意味着其他包下面,无法进行实例化。改为public + */ +public class XueguiyangTestShape { + public static void main(String[] args) { + XueguiyangShape circle = new XueguiyangCircle(2.0); + circle.getArea(); + XueguiyangShape square = new XueguiyangSquare(23,43); + square.getArea(); + XueguiyangShape triangle = new XueguiyangTriangle(23.2,21.2); + triangle.getArea(); + + + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/xueguiyang/XueguiyangTriangle.java b/src/main/java/com/bt/xlt/homework0319/xueguiyang/XueguiyangTriangle.java new file mode 100644 index 0000000..d89b171 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/xueguiyang/XueguiyangTriangle.java @@ -0,0 +1,19 @@ +package com.bt.xlt.homework0319.xueguiyang; + +/** + * Created by xueguiyang on 16-3-21. + */ +public class XueguiyangTriangle extends XueguiyangShape { + private double bottom; + private double high; + + XueguiyangTriangle(double b,double h){ + bottom = b; + high = h; + } + + @Override + public void getArea() { + System.out.println("三角形面积 "+(bottom + high)/2); + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/zhaojie/Circle.java b/src/main/java/com/bt/xlt/homework0319/zhaojie/Circle.java new file mode 100644 index 0000000..87d29bc --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/zhaojie/Circle.java @@ -0,0 +1,24 @@ +package com.bt.xlt.homework0319.zhaojie; + +/** + * Created by ZhaoJie on 2016/3/22. + * 功能:创建Shape类的子类:圆形类(Circle) + */ +public class Circle extends Shape { + private final double PI = 3.14; + private double radius; + + Circle(double radius) { + this.radius = radius; + } + + // 取半径 + public double getRadius() { + return radius; + } + + // 计算圆面积 + public double getArea() { + return PI * radius * radius; + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/zhaojie/Shape.java b/src/main/java/com/bt/xlt/homework0319/zhaojie/Shape.java new file mode 100644 index 0000000..8acacd9 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/zhaojie/Shape.java @@ -0,0 +1,9 @@ +package com.bt.xlt.homework0319.zhaojie; + +/** + * Created by ZhaoJie on 2016/3/22. + * 功能:定义一个图形父类 abstract Shape,包含求面积的方法getArea()。 + */ +public abstract class Shape { + abstract double getArea(); +} diff --git a/src/main/java/com/bt/xlt/homework0319/zhaojie/Square.java b/src/main/java/com/bt/xlt/homework0319/zhaojie/Square.java new file mode 100644 index 0000000..0b6f079 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/zhaojie/Square.java @@ -0,0 +1,30 @@ +package com.bt.xlt.homework0319.zhaojie; + +/** + * Created by ZhaoJie on 2016/3/22. + * 功能:创建Shape类的子类:矩形类(Square) + */ +public class Square extends Shape { + private double length; + private double width; + + Square(double length, double width) { + this.length = length; + this.width = width; + } + + // 获取矩形的长度 + public double getLength() { + return length; + } + + // 获取矩形的宽度 + public double getWidth() { + return width; + } + + // 计算矩形面积 + public double getArea() { + return length * width; + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/zhaojie/Triangle.java b/src/main/java/com/bt/xlt/homework0319/zhaojie/Triangle.java new file mode 100644 index 0000000..e948791 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/zhaojie/Triangle.java @@ -0,0 +1,30 @@ +package com.bt.xlt.homework0319.zhaojie; + +/** + * Created by ZhaoJie on 2016/3/22. + * 功能:创建Shape类的子类:三角形类(Triangle) + */ +public class Triangle extends Shape { + private double base; + private double high; + + Triangle(double base, double high) { + this.base = base; + this.high = high; + } + + // 获取三角形的底 + public double getBase() { + return base; + } + + // 获取三角形的高 + public double getHigh() { + return high; + } + + // 计算三角形面积 + public double getArea() { + return base * high * 1 / 2; + } +} diff --git a/src/main/java/com/bt/xlt/homework0319/zhaojie/ZhaojieShapeArea.java b/src/main/java/com/bt/xlt/homework0319/zhaojie/ZhaojieShapeArea.java new file mode 100644 index 0000000..c21696f --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0319/zhaojie/ZhaojieShapeArea.java @@ -0,0 +1,19 @@ +package com.bt.xlt.homework0319.zhaojie; + +/** + * Created by ZhaoJie on 2016/3/22. + * 功能:输出图形(圆、矩形、三角形)面积 + * Reviewer: beigui + * Review Date: 2016/3/25 + */ +public class ZhaojieShapeArea { + public static void main(String[] args) { + Circle c = new Circle(10); + Square s = new Square(8.0, 5.55); + Triangle t = new Triangle(5, 12); + + System.out.println("c的面积:" + c.getArea()); + System.out.println("s的面积:" + s.getArea()); + System.out.println("t的面积:" + t.getArea()); + } +} diff --git a/src/main/java/com/bt/xlt/homework0326/ChenCaiYu_File.java b/src/main/java/com/bt/xlt/homework0326/ChenCaiYu_File.java new file mode 100644 index 0000000..6687a92 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0326/ChenCaiYu_File.java @@ -0,0 +1,77 @@ +package com.bt.xlt.homework0326; + +import java.io.*; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; + +/** + * Created by little_5 on 2016-03-30. + * 作业:将下面一段文字写入文件,(并从文件读出),请用map转存即记录数据 + first=你好 + second=hello + third=早上好 + fourth=晚上好 + * Reviewer: beigui + * Review Date: 2016/3/30 + */ +public class ChenCaiYu_File { + public static void main (String[] args) { + File file = new File("D:/chencaiyu/","ccy.txt"); + if (!file.exists()) { + try { + file.createNewFile(); + } catch (IOException e) { + e.printStackTrace(); + } + } + //写入文件 + FileOutputStream out = null; + String content = "first=你好\r\nsecond=hello\r\nthird=早上好\r\nfourth=晚上好"; + byte[] contentArr = content.getBytes(); + try { + out = new FileOutputStream(file); + out.write(contentArr); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } finally { + try { + out.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + //读取文件 + if (file.exists()) { + BufferedReader br = null; + try { + br = new BufferedReader(new FileReader(file)); + String line = br.readLine(); + Map map = new HashMap(); + while (line != null) { + String[] str = line.split("="); + map.put(str[0], str[1]); + line = br.readLine(); + } + System.out.println(map); + Set keys = map.keySet(); + for (String key : keys) { + System.out.println("key为:" + key + " value为:" + map.get(key)); + } + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } finally { + try { + br.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + } +} diff --git a/src/main/java/com/bt/xlt/homework0326/FangweiliFileStream.java b/src/main/java/com/bt/xlt/homework0326/FangweiliFileStream.java new file mode 100644 index 0000000..0e26398 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0326/FangweiliFileStream.java @@ -0,0 +1,87 @@ +package com.bt.xlt.homework0326; + +import java.io.*; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; + + +/** + * Created by FangWeiLi on 2016/3/30. + *作业:将下面一段文字写入文件,(并从文件读出),请用map转存即记录数据 + first=你好 + second=hello + third=早上好 + fourth=晚上好 + + * Reviewer: beigui + * Review Date: 2016/3/31 + */ +public class FangweiliFileStream { + private static final String PROPERTY_FILE = "D:/zdhstudy/HomeWork.txt"; + + public static void main(String[] args) { + File file = new File("D:/zdhstudy","HomeWork.txt"); + if (!file.exists()){ + try { + file.createNewFile(); + }catch (IOException e){ + e.printStackTrace(); + } + } + FileOutputStream outputStream = null; + byte[] content = "first=你好\r\nsecond=hello\r\nthird=早上好\r\nfourth=晚上好".getBytes(); + try { + outputStream = new FileOutputStream(file); + outputStream.write(content); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + }finally { + if (null != outputStream){ + try { + outputStream.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + //将读出的数据写入map + Map map = new HashMap(); + BufferedReader br = null; + try { + br = new BufferedReader(new InputStreamReader(new FileInputStream(PROPERTY_FILE))); + String data = null; + while((data = br.readLine())!=null) + { + if(data!=null&&!"".equals(data)) + { + String[] arr = data.split("="); + if(arr.length>0) + { + map.put(arr[0],arr[1]); + } + } + } + Set arr1 = map.keySet(); + System.out.println("文件中的内容是:"); + for (String key : arr1) { + System.out.println( key + "=" + map.get(key)); + } + + } catch (Exception e) { + e.printStackTrace(); + }finally { + if (br != null){ + try { + br.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + } + + +} diff --git a/src/main/java/com/bt/xlt/homework0326/FileIO.java b/src/main/java/com/bt/xlt/homework0326/FileIO.java new file mode 100644 index 0000000..1d01080 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0326/FileIO.java @@ -0,0 +1,44 @@ +package com.bt.xlt.homework0326; + +import java.io.*; +import java.util.HashMap; +import java.util.Map; + +/** + * Created by lidongkun on 2016/3/29. + * Reviewer: beigui + * Review Date: 2016/3/30 + * Comments: 流的关闭需要在finally里面 + */ +public class FileIO { + Map map = new HashMap(); + public void addMap() { + map.put("first","你好"); + map.put("second","Hello"); + map.put("third","早上好"); + map.put("fourth","晚上好"); + } + + public void fileWriter() { + try { + FileWriter filewriter = new FileWriter("D:/ldk.txt"); + BufferedWriter bufferewriter = new BufferedWriter(filewriter); + for(String item:map.values()) { + bufferewriter.write(item); + } + bufferewriter.close(); + }catch(IOException e) { + e.printStackTrace(); + } + } + public void fileReader() { + try { + FileReader filereader = new FileReader("D:/ldk.txt"); + BufferedReader bufferedreader = new BufferedReader(filereader); + System.out.println(bufferedreader.readLine()); + bufferedreader.close(); + }catch(IOException e) { + e.printStackTrace(); + } + } +} diff --git a/src/main/java/com/bt/xlt/homework0326/FileOperate.java b/src/main/java/com/bt/xlt/homework0326/FileOperate.java new file mode 100644 index 0000000..3a07ae8 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0326/FileOperate.java @@ -0,0 +1,98 @@ +package com.bt.xlt.homework0326; + +import java.io.*; +import java.util.HashMap; +import java.util.Map; + +/** + * Created by QZ on 2016/3/30. + */ +public class FileOperate { + /** + * 创建文件,并将数据写入文件 + * @param fileName + * @param context + */ + public void writeDataToFile(String fileName,String context) { + File file = new File(fileName); + //创建文件 + if (!file.exists()) { + try { + file.createNewFile(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + //文件内容写入 + FileOutputStream out = null; + byte[] contextReader = context.getBytes(); + try { + out = new FileOutputStream(file); + out.write(contextReader); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } finally { + if (null != out) { + try { + out.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + } + + /** + * 文件内容读取 + * @param fileName + * @return + */ + public String readDataFromFile(String fileName){ + String context = ""; + FileInputStream in = null; + try { + byte[] contentReader = new byte[1024]; + in = new FileInputStream(fileName); + int length = in.read(contentReader); + context = new String(contentReader, 0, length); + System.out.println("1、文件内容::" + new String(contentReader, 0, length)); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } finally { + if (null != in) { + try { + in.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + return context; + } + + /** + * map转存数据 + * @param context + * @return + */ + public Map putDataToMap(String context){ + String [] arr = context.split(" "); + Map map = new HashMap(); + for(String str : arr){ + String key = str.split("=")[0]; + String value = str.split("=")[1]; + map.put(key,value); + } + return map; + } + + + + + } + diff --git a/src/main/java/com/bt/xlt/homework0326/FileOperateTest.java b/src/main/java/com/bt/xlt/homework0326/FileOperateTest.java new file mode 100644 index 0000000..4bb56ba --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0326/FileOperateTest.java @@ -0,0 +1,35 @@ +package com.bt.xlt.homework0326; + +import java.util.Map; + +/** + * 方法二:面向对象 + * 内容:将下面一段文字写入文件,(并从文件读出),请用map转存即记录数据 first=你好 second=hello third=早上好 fourth=晚上好 + * Created by QZ on 2016/3/30. + * Reviewer: beigui + * Review Date: 2016/3/30 + * Comments: 能够用基本的面向对象的思想考虑问题。文件操作类提供了写数据和读数据的方法 + */ +public class FileOperateTest { + public static void main(String[] args) { + String con = "first=你好 second=hello third=早上好 fourth=晚上好"; + FileOperate fileOperate = new FileOperate(); + + fileOperate.writeDataToFile("D:/fileOPerate.txt",con); //创建文件,并将内容写入文件 + + String filecontext = fileOperate.readDataFromFile("D:/fileOPerate.txt"); //读文件内容 + + Map map = fileOperate.putDataToMap(filecontext); //map转存文件内容 + System.out.println("2、map转存信息:"); + for (String key : map.keySet()) { + System.out.println(key + "=" + map.get(key)); + } + + + + + + + + } +} diff --git a/src/main/java/com/bt/xlt/homework0326/IOUser.java b/src/main/java/com/bt/xlt/homework0326/IOUser.java new file mode 100644 index 0000000..02441b5 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0326/IOUser.java @@ -0,0 +1,15 @@ +package com.bt.xlt.homework0326; + +/** + * Created by lidongkun on 2016/3/29. + */ +public class IOUser { + public static void main(String[] args) { + FileIO fi = new FileIO(); + fi.addMap(); + fi.fileWriter(); + fi.fileReader(); + } +} + + diff --git a/src/main/java/com/bt/xlt/homework0326/JiaBinReadWriteTest.java b/src/main/java/com/bt/xlt/homework0326/JiaBinReadWriteTest.java new file mode 100644 index 0000000..b4c8830 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0326/JiaBinReadWriteTest.java @@ -0,0 +1,76 @@ +package com.bt.xlt.homework0326; + +import java.io.*; +import java.util.Map; +import java.util.TreeMap; + +/** + * Created by jiabin on 2016/3/28. + * Reviewer: beigui + * Review Date: 2016/3/30 + * Comments: 善用TreeMap保持输入顺序 + */ +public class JiaBinReadWriteTest { + public static void main(String[] args) { + + TreeMap map = new TreeMap(); + map.put("first", "你好"); + map.put("second", "hello"); + map.put("third", "早上好"); + map.put("fourth", "晚上好"); + + File file = new File("D:", "jiabin.txt"); + if (file.exists()) { + file.delete(); + } + try { + file.createNewFile(); + } catch (IOException e) { + e.printStackTrace(); + } + //文件写入 + FileOutputStream out = null; + try { + out = new FileOutputStream(file); + for (Map.Entry item : map.entrySet()) { + byte[] content = (item.getKey() + " = " + item.getValue() + "\r\n").getBytes(); + try { + out.write(content); + } catch (IOException e) { + e.printStackTrace(); + } + } + } catch (FileNotFoundException e) { + e.printStackTrace(); + } finally { + if (null != out) { + try { + out.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + + //文件读取 + FileReader in = null; + char[] content = new char[1024]; + try { + in = new FileReader(file); + int length = in.read(content); + System.out.println("jiabin.txt中信息是:" + "\n" + new String(content, 0, length)); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } finally { + if (null != in) { + try { + in.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + } +} \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0326/Jiyapingmap.java b/src/main/java/com/bt/xlt/homework0326/Jiyapingmap.java new file mode 100644 index 0000000..c7ef524 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0326/Jiyapingmap.java @@ -0,0 +1,62 @@ +package com.bt.xlt.homework0326; /** + * Created by jiyaping on 2016/3/31. + * Reviewer: beigui + * Review Date: 2016/3/31 + */ +import java.io.*; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; + +public class Jiyapingmap { + public static void main(String[] args)throws IOException { + + String txt="first=你好:"+"second=holle:"+"third=早上好:"+"fourth=晚上好"; + File file = new File("D:\\hello.txt"); + if(!file.exists()){ + file.createNewFile(); + } + + FileWriter writer = new FileWriter (file); + writer.write(txt); + writer.flush();// 清空缓冲区,立即将输出流里的内容写到文件里 + + Map map = new HashMap(); + File file1 = new File("D:\\hello.txt"); + BufferedReader reader = null; + try { + reader = new BufferedReader(new FileReader(file1)); + String tempString = null; + int line = 1; + // 一次读入一行,直到读入null为文件结束 + while ((tempString = reader.readLine()) != null) { + // 显示行号 + System.out.println("line " + line + ": " + tempString); + String[] ss = tempString.split(":"); + for(int i = 0 ;i < ss.length ;i ++){ + String[] s = ss[i].split("="); + map.put(s[0], s[1]); + } + line++; + } + + reader.close(); + } catch (IOException e) { + e.printStackTrace(); + } finally { + if (reader != null) { + try { + reader.close(); + } catch (IOException e1) { + } + + } + } + Set set = map.keySet(); + for (String keySet : set) { + System.out.println("map:"+keySet+" value:"+map.get(keySet)); + + } + + } +} diff --git a/src/main/java/com/bt/xlt/homework0326/LiChangxingWriteFile.java b/src/main/java/com/bt/xlt/homework0326/LiChangxingWriteFile.java new file mode 100644 index 0000000..d1ace34 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0326/LiChangxingWriteFile.java @@ -0,0 +1,60 @@ +package com.bt.xlt.homework0326; + +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.util.HashMap; +import java.util.Map; + +/** + * Created by LiChangxing on 2016/3/28. + * Reviewer: beigui + * Review Date: 2016/3/30 + * Comments: 代码规范呢? + */ +public class LiChangxingWriteFile { + public static void main( String[] args ) { + Map map = new HashMap(); + map.put("first", "你好"); + map.put("second", "hello"); + map.put("third", "早上好"); + map.put("fouth", "晚上好"); + + + File file = new File("d:/", "testfile.txt");; + FileOutputStream out = null; + StringBuffer str = new StringBuffer(""); + + if ( file.exists() == false ) + { + try { + file.createNewFile(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + for (Map.Entry item : map.entrySet()) { + + str.append(item).append(" "); //将Map中的key和value拼成string + } + + try { + out = new FileOutputStream(file); + byte [] content = str.toString().getBytes(); + out.write(content); + + } catch (IOException e) { + e.printStackTrace(); + }finally { + try { + out.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + } + } + + diff --git a/src/main/java/com/bt/xlt/homework0326/LiWenFileRWDemo.java b/src/main/java/com/bt/xlt/homework0326/LiWenFileRWDemo.java new file mode 100644 index 0000000..7f80b0d --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0326/LiWenFileRWDemo.java @@ -0,0 +1,80 @@ +package com.bt.xlt.homework0326; + +import java.io.*; +import java.util.HashMap; +import java.util.Map; + +/** + * Created by wen.li on 16/3/26. + * 作业:将下面一段文字写入文件,(并从文件读出),请用map转存即记录数据 + * first=你好,second=hello,third=早上好,fourth=晚上好 + * Reviewer: beigui + * Review Date: 2016/3/30 + */ +public class LiWenFileRWDemo { + public static void main(String[] args) { + //map存储内容 + Map cMap = new HashMap(); + cMap.put("first","你好"); + cMap.put("second","hello"); + cMap.put("third","早上好"); + cMap.put("fourth", "晚上好"); + + StringBuffer content = new StringBuffer(); + + for (String item : cMap.keySet()) { + content.append(item).append("=").append(cMap.get(item)).append(" "); + } + + File file = new File("src/main/java/com/day4/LiWenFileRWDemo","map.txt"); + if (!file.exists()) { + try { + file.createNewFile(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + //文件写入 + FileOutputStream out = null; + try { + out = new FileOutputStream(file); + out.write(content.toString().getBytes("utf-8")); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } finally { + if (out != null) { + try { + out.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + + //文件读取 + FileInputStream input = null; + try { + System.out.println("文件大小:" + file.length()); + byte[] contentReader = new byte[1024]; + input = new FileInputStream(file); + int length = input.read(contentReader); + input.read(); + System.out.println("文件内容为:" + new String(contentReader,0,length)); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } finally { + if (input != null) { + try { + input.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + } +} diff --git a/src/main/java/com/bt/xlt/homework0326/MaXiaoYuFileReadByMap.java b/src/main/java/com/bt/xlt/homework0326/MaXiaoYuFileReadByMap.java new file mode 100644 index 0000000..2e8f191 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0326/MaXiaoYuFileReadByMap.java @@ -0,0 +1,75 @@ +package com.bt.xlt.homework0326; + +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * Created by maxy on 2016/3/28. + * Reviewer: beigui + * Review Date: 2016/3/30 + * Comments: 能多考虑到输入的map顺序,不错。 + * 改进点:还是有点麻烦,直接用TreeMap是不是更好 + */ +public class MaXiaoYuFileReadByMap { + public static void main ( String[] args ) { + + /** 声名文件 */ + File file1 = new File ( "D:\\", "test.txt" ); + + /** 创建文件读取流 */ + FileOutputStream fileOut1 = null; + + /** 创建map */ + Map < String, String > map1 = new HashMap (); + map1.put ( "first", "你好" ); + map1.put ( "second", "Hello" ); + map1.put ( "third", "早上好" ); + map1.put ( "fourth", "晚上好" ); + + /** 创建list,记录map的key(因为要求顺序所以用list记录) */ + List < String > list1 = new ArrayList < String > (); + list1.add ( "first" ); + list1.add ( "second" ); + list1.add ( "third" ); + list1.add ( "fourth" ); + + /** 如果已存在同命名的文件,则先删除 */ + if ( file1.exists() ) { + file1.delete(); + } + + /** 创建文件。从list中读出key,并通过map匹配到value,通过文件依次读取key和value */ + if ( file1.exists() == false) { + try { + file1.createNewFile(); + fileOut1 = new FileOutputStream( file1 ); + for ( int i = 0; i < list1.size(); i++ ) { + fileOut1.write( list1.get( i ).getBytes() ); + fileOut1.write( "=".getBytes() ); + fileOut1.write( map1.get( list1.get( i ) ).getBytes() ); + fileOut1.write( "\r\n".getBytes() ); + } + } catch ( IOException e ) { + System.out.println ( "异常信息是:" + e.getMessage() ); + } catch ( Exception e ) { + System.out.println ( "异常信息是:" + e.getMessage() ); + } finally { + if ( fileOut1 != null ) { + try { + fileOut1.close(); + } catch (IOException e) { + e.printStackTrace(); + } catch (Exception e) { + e.printStackTrace(); + } + } + } + } + + } +} diff --git a/src/main/java/com/bt/xlt/homework0326/MiJuanFileReaderStreamHomework.java b/src/main/java/com/bt/xlt/homework0326/MiJuanFileReaderStreamHomework.java new file mode 100644 index 0000000..0d8fbff --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0326/MiJuanFileReaderStreamHomework.java @@ -0,0 +1,75 @@ +package com.bt.xlt.homework0326; + +import java.io.*; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; +import java.io.BufferedReader; + +/** + * Created by mijua on 3/26/2016. + * Reviewer: beigui + * Review Date: 2016/3/30 + * Comments: 能够用BufferWriter写入字。 + * 改进点:流在finally里面关闭 + */ +public class MiJuanFileReaderStreamHomework { + public static void main(String[] args) { + Map map = new HashMap(); + map.put("first", "你好"); + map.put("second", "hello"); + map.put("third", "早上好"); + map.put("fourth", "晚上好"); + + File file = new File("c:/", "homework.txt"); + if(!file.exists()) { + try { + file.createNewFile(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + //以行为单位将字符串写入文件中 + BufferedWriter writer = null; + try { + writer = new BufferedWriter(new FileWriter (file)); + Set keys = map.keySet(); + for (String key : keys) { + writer.write(key); + writer.write(map.get(key)); + writer.newLine(); + } + writer.close(); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } + + //以行为单位读取文件内容,一次读一行 + BufferedReader reader = null; + System.out.println("以行为单位读取文件内容,一次读一行"); + try { + reader = new BufferedReader(new FileReader(file)); + String tempString = null; + while((tempString = reader.readLine()) != null) { + System.out.println(tempString); + } + reader.close(); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } finally { + try { + writer.close(); + reader.close(); + } catch (IOException e) { + e.printStackTrace(); + } + + } + } + } + \ No newline at end of file diff --git a/src/main/java/com/bt/xlt/homework0326/WangXiaoJia_FileReaderWriter.java b/src/main/java/com/bt/xlt/homework0326/WangXiaoJia_FileReaderWriter.java new file mode 100644 index 0000000..d8e0b79 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0326/WangXiaoJia_FileReaderWriter.java @@ -0,0 +1,84 @@ +package com.bt.xlt.homework0326; + +import java.io.*; +import java.util.HashMap; +import java.util.Map; + +/** + * 作业:将下面一段文字写入文件,(并从文件读出),请用map转存即记录数据 + first=你好 + second=hello + third=早上好 + fourth=晚上好 + 下载安装好mysql数据库 , client - MYSQL-Front + * Created by 王小佳 on 2016/3/28. + * Reviewer: beigui + * Review Date: 2016/3/30 + */ +public class WangXiaoJia_FileReaderWriter { + public static void main(String[] args) { + File file = new File("D:/","homework1.txt"); + //新建一个文件对象 + FileWriter writer = null; + String content = "first=你好 second=hello third=早上好 fourth=晚上好"; + // 对内容进行赋值 + + //文件不存在则创建 + if(!file.exists()){ + try { + file.createNewFile(); + //调用createNewFile()方法,创建文件 + } catch (IOException e) { + e.printStackTrace(); + } + } + //文件写入逻辑 + try { + writer = new FileWriter(file); + writer.write(content); + } catch (FileNotFoundException e){ + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + }finally { + //关闭流的操作在finally代码段中做,为了即使出异常,打开的流也会被关闭 + if(null != writer){ + try{ + writer.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + //文件读取操作 + FileReader in =null; + try { + char[] contentReader = new char[1024]; + in = new FileReader(file); + int length = in.read(contentReader); + System.out.println(""); + }catch (FileNotFoundException e){ + e.printStackTrace(); + }catch (IOException e){ + e.printStackTrace(); + }finally { + if (null != in){ + try{ + in.close(); + }catch (IOException e){ + e.printStackTrace(); + } + } + } + Map map = new HashMap(); + map.put("first","你好"); + map.put("second","hello"); + map.put("third","早上好"); + map.put("fourth","晚上好"); + for(String item :map.keySet()){ + System.out.println("key=" + item + ",value=" + map.get(item)); + } + + } + +} diff --git a/src/main/java/com/bt/xlt/homework0326/WeiYuXinInputAndOutputFile.java b/src/main/java/com/bt/xlt/homework0326/WeiYuXinInputAndOutputFile.java new file mode 100644 index 0000000..dea2930 --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0326/WeiYuXinInputAndOutputFile.java @@ -0,0 +1,70 @@ +package com.bt.xlt.homework0326; + +import java.io.*; +import java.util.HashMap; +import java.util.Map; + +/** + * Created by weiyuxin on 2016/3/28. + * 功能:将下面一段文字写入文件,(并从文件读出),用map转存即记录数据 + * Reviewer: beigui + * Review Date: 2016/3/30 + */ +public class WeiYuXinInputAndOutputFile { + public static void main(String[] args) { + File file = new File("F:/", "file.txt"); + if (!file.exists()) { + try { + file.createNewFile(); + } catch (IOException e) { + e.printStackTrace(); + } + } + Map map = new HashMap(); + map.put("first=", "你好"); + map.put("second=", "hello"); + map.put("third=", "早上好"); + map.put("fourth=", "晚上好"); + String str = ""; + for (Map.Entry item : map.entrySet()) { + str = str + item.getKey() + item.getValue() + "\r\n"; + } + FileOutputStream out = null; + byte[] contentWrite = str.getBytes(); + try { + out = new FileOutputStream(file); + out.write(contentWrite); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + }finally { + if (null != out){ + try { + out.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + FileInputStream in = null; + try { + byte[] contentReader = new byte[1024]; + in = new FileInputStream(file); + int length = in.read(contentReader); + System.out.print( new String(contentReader, 0, length)); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } finally { + if (null != in) { + try { + in.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + } +} diff --git a/src/main/java/com/bt/xlt/homework0326/XiaoMaProject.java b/src/main/java/com/bt/xlt/homework0326/XiaoMaProject.java new file mode 100644 index 0000000..a57edeb --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0326/XiaoMaProject.java @@ -0,0 +1,106 @@ +package com.bt.xlt.homework0326; +/** + * Created by xiaoma on 2016/3/29. + * Reviewer: beigui + * Review Date: 2016/3/30 + * Comments: 提前实现了Buffer Reader, Buffer Writer + */ + +import java.io.BufferedReader; +import java.io.BufferedWriter; +import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileReader; +import java.io.FileWriter; +import java.io.IOException; +import java.util.HashMap; +import java.util.Map; + +public class XiaoMaProject { + + public static void main(String[] args) { + //调用方法 + method_File(); + } + + + //封装成一个写、读、存的方法 + private static void method_File(){ + //在指定的目录建立文件夹 + File f = new File("C:/", "xiaoma.txt"); + if(!f.exists()){ + try { + f.createNewFile(); + } catch (IOException e) { + throw new RuntimeException("未能创建或找不到指定盘符"); + } + } + + //创建缓冲区指向,把数据写入缓存中 + BufferedWriter bw =null; + try { + bw = new BufferedWriter( new FileWriter(f)); + bw.write("first=你好"); + bw.newLine(); + + bw.write("second=hello"); + bw.newLine(); + + bw.write("third=早上好"); + bw.newLine(); + + bw.write("fourth=晚上好"); + + } catch (IOException e) { + throw new RuntimeException("写入失败!"); + + }finally{ + + try { + if(bw!=null){ + bw.close(); + + } + + } catch (IOException e) { + throw new RuntimeException("关闭失败"); + } + } + + //创建缓冲指向,读取文件中的数据 + BufferedReader br = null; + try { + br = new BufferedReader(new FileReader(f)); + + String line = null; + //创建一个MAP集合来保存数据 + Map m =new HashMap(); + try { + while((line = br.readLine()) != null) { + + String[] arr = line.split("=");//使用=进行截取,把前面当前key,后面当作values + m.put(arr[0], arr[1]); + // System.out.println(arr[0]+"...."+arr[1]); + } + } catch (IOException e) { + + throw new RuntimeException("无法获取"); + } + System.out.println(m);//把这个集合打印出来到控制台 + + } catch (FileNotFoundException e) { + + throw new RuntimeException("读取失败!"); + }finally{ + try { + if(br!=null){ + br.close(); + } + } catch (IOException e) { + throw new RuntimeException("关闭流失败"); + } + } + + } + +} diff --git a/src/main/java/com/bt/xlt/homework0326/xueguiyang_MapToFile.java b/src/main/java/com/bt/xlt/homework0326/xueguiyang_MapToFile.java new file mode 100644 index 0000000..fa49b0d --- /dev/null +++ b/src/main/java/com/bt/xlt/homework0326/xueguiyang_MapToFile.java @@ -0,0 +1,94 @@ +package com.bt.xlt.homework0326; + +import java.io.*; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; + + +/** + * Created by xueguiyang on 16-3-29. + * 作业:将下面一段文字写入文件,(并从文件读出),请用map转存即记录数据 + first=你好 + second=hello + third=早上好 + fourth=晚上好 + * Reviewer: beigui + * Review Date: 2016/3/30 + */ +public class xueguiyang_MapToFile { + private static String path = "/Users/xueguiyang/Desktop/workspace"; + private static String name = "test.txt"; + + public static void main(String[] args) { + //创建文件 + File file = new File(path, name); + if (file.exists()) { + file.delete(); + System.out.println("文件已删除"); + } else { + try { + file.createNewFile(); + } catch (IOException e) { + e.printStackTrace(); + } + } + //插入数据 + Map map = new HashMap(); + map.put("first", "你好"); + map.put("second", "hello"); + map.put("third", "早上好"); + map.put("fourth", "晚上好"); + + //向文件里写数据 + FileWriter writer = null; + try { + writer = new FileWriter(file, false); + } catch (IOException e) { + e.printStackTrace(); + } + StringBuffer buffer = new StringBuffer(); + Set keys = map.keySet(); + for (String key : keys) { + buffer.append(key); + buffer.append(map.get(key)); + buffer.append("\n"); + } + try { + writer.write(buffer.toString()); + writer.close(); + } catch (IOException e) { + e.printStackTrace(); + } + + + //从文件读数据 + FileReader fr= null; + try { + fr = new FileReader(file); + } catch (FileNotFoundException e) { + e.printStackTrace(); + } + + BufferedReader br = new BufferedReader(fr); + + String str = ""; + try { + while((str = br.readLine()) != null) + { + System.out.println(str); + } + br.close(); + fr.close(); + } catch (IOException e) { + e.printStackTrace(); + } + + + } +} + + + + +