实训总结(三)

原创 2016年08月30日 17:04:12

如果你需要理由去放弃现在的学习,那么你就要想下你的信念和追求是什么,也许你就能找打正确的学习方法和方向

关于实训第二天的总结

关于java中简单的控制语句的实现

今天的实训内容依然是逻辑的思考和方法的使用,比如说“水仙花数” 和杨辉三角的实现,
这些都是比较有意思的,因为在这里面有很多值得我们注意的地方,
比如说,水仙花数的命名规范和杨奎三角的打印格式,这些都是需要按照规定的要求去实现的,
实现代码一般都会有自己命名的行列的数字控制,其实这些都是业务的一种简单的实现吧,网上代码很多,我就放最主要的来说明下

  for(int i=0;i<n;i++){
              arr[i]=new int [i+1];
               for(int j=0;j<=i;j++){
                   if (j==0||i==j) {
                      arr[i][j]=1;
                     // System.out.println(arr[i][j]+"\t");
                   }
                   else{
                       arr[i][j]=arr[i-1][j-1]+arr[i-1][j];


                   }
                   System.out.print(arr[i][j]+"\t");

               }
               System.out.println(); 
           }

在这个语句中首先把二维数组转换成一位数组组,然后去计算中间不确定值,最后汇总,这也是简化的一种好的方法实现吧
,当然从这个简单的例子里,我了解了更深一步的语句控制的规则,都是在运行着现实中的一些现象,这个其实就是一种队列的实现方式,也许在整理自己的队伍或者去其他的规范中
应该用到这种思想吧

用一个小游戏来深化面向对象的思想

猜拳游戏在生活中依然是很常见的判断方式,在游戏中我们也可以实现这个逻辑,我们可以创建我们需要的逻辑对象,在这个游戏中,主要实现的逻辑,就是简单的判断,这个游戏在很多的实现方式都有用到,而这里要写的是简单的实现
首先是简单软件的分析,猜拳需要的对象有三个人,电脑,和游戏,我们可以设置三个类去实现抽象,然后定义方法去实现逻辑,首先是人需要输入,所以使用到Sanner这个类,然后电脑玩家需要用到的是Random对象产生随机数,在开始的时候我使用的是简单的思维逻辑、
就是运用枚举的方式
代码如下:


import java.util.Random;
/**
 * @version
 * @author lxh
 *
 * 运用枚举去产生随机数
 */

public class Enums {
    private static Random rand=new Random(47);
    public static <T extends Enum<T>>T random(Class<T> ec){
        return random(ec.getEnumConstants());
    }
    public static <T>T random(T[] values){
        return values[rand.nextInt(values.length)];
    }

}
/**
* 求石头剪刀布的简单随机
*
*/
import java.util.Random;
@SuppressWarnings("unused")
enum open{ 石头,剪刀,布 }
public class ComputerNumber {
    public static void main(String[] args) {
        for(int n=0;n<1;n++){
        System.out.print(Enums.random(open.class)+" ");
        }
    }


}

后来在老师的指导下,使用的是数字的简单代替和更换,这样的话逻辑也会更加的清晰,当然这样能够类与类之间
的耦合度降低了不少,我只简单的写成这样

import java.util.Scanner;

public class Game {
    User user = null;
    Computer c = null;
    String[] player = { "", "小明", "小鱼", "小林" };
    String[] quans = { "", "石头", "剪刀", "布" };

    public void init() {
        user = new User();

        System.out.println("----------Game Start----------");
        System.out.println("请输入玩家名字1.小明 2.小鱼 3.小林");
        Scanner scanner = new Scanner(System.in);
        int i = scanner.nextInt();

        c = new Computer();
        c.name = player[i];

        startGame();
    }

    public void startGame() {
        int resutl1 = user.chuquan();
        int result2 = c.chuquan();

        System.out.println("你出的" + quans[resutl1] + " 电脑玩家" + c.name + "出的是" + quans[result2]);
        if (resutl1 == result2) {
            System.out.println("平局");
        } else {

            if ((resutl1 == 1 && result2 == 3) || (resutl1 == 2 && result2 == 1) || (resutl1 == 3 && result2 == 2)) {
                System.out.println("you win");
            } else {
                System.out.println("you lost");
            }
        }
    }

    public static void main(String[] args) {
        Game game=new Game();
        game.init();
    }

}

这样就简单了不少,而且使用了数组的简单应用节约了内存空间,当然最主要的是在练习中能够学会传值和赋值的运用

总结

在今天让我学到最好的就是对逻辑的思考,以前只在意的是如何去实现,然后忘了一个思考的过程,而现在有时间静下心来慢慢整理零碎的知识点也是对自己的一种进步的一种督促吧,在接下来的时间里,我希望用我的笔记录更多的学习和生活的思考,也许以后能够在这里寻找更好的解决方案吧,毕竟万变不离其中。

版权声明:本文为博主原创文章,未经博主允许不得转载。

H5 实训课

2017/11/14 一、程序设计基础 第一节课我们了解了IT行业的现状以及发展前景,学习了一些JavaScript的基础知识。 JavaScript是一种脚本语言。所有的计算机高级语言...
  • a1184568110
  • a1184568110
  • 2017年11月14日 14:49
  • 319

Android - 实训项目总结

Android 1.简介 1.1项目简介 Coolweather是一款基于Android的天气查询软件,实现了省市县的遍历、县级地区天气的查询、手动更新天气、8小时的自动更新天气信息; 1.2...
  • CL18652469346
  • CL18652469346
  • 2016年12月21日 17:07
  • 796

实训总结_ java班 周

经过了在保定和在北京的实训,我真的明白了很多!     不光是在专业知识方面,更多的是让我明白了,自己将来的路还很长,自己目前懂得的还很少,以后的生活还要自己努力拼搏。     在实训中我深切...
  • redarmy_chen
  • redarmy_chen
  • 2012年07月18日 08:42
  • 7323

linux实训第二天总结

1.nfs服务 (1)检测服务是否安装 dpkg -s hfs-kernel-server (2)如果未安装 sudo apt-get install nfs-kernel-server (...
  • isco22
  • isco22
  • 2017年12月27日 21:44
  • 73

实训心得_高俊伟 java

实训心得   实训中通过老师的课堂讲解与企业化得标准培训,使我加深了对自己专业的认识。从而确定自己以后努力方向。要在短暂的时间内,尽可能多的学到东西,就需要我们跟老师或同学进行很好的沟通,还要加深自...
  • redarmy_chen
  • redarmy_chen
  • 2012年07月19日 14:03
  • 7269

asp.net实训总结

public void SendSMTPEMail(string strSmtpServer, string strFrom, string strFromPass, string strto, st...
  • C979170768
  • C979170768
  • 2011年10月31日 20:40
  • 6389

关于JAVA实训项目的总结

  • zhazha1980518
  • zhazha1980518
  • 2009年05月07日 12:47
  • 6637

半个月实训总结

心境变化 来了南京东软培训已有半个月,这半个月学习了一个星期的Oracle数据库,一个星期的Java,Oracle数据库加固了自己的SQL语句,主要对于查询语句有了更深的理解,如《收获不止Oracl...
  • u012157999
  • u012157999
  • 2015年07月19日 22:46
  • 589

Android实训课程总结之四

本次课老师叫我们写了一个简易的拨号器程序,实现了用自己编写的程序进行现实拨号的功能。   具体功能实现: 首先在布局文件中进行如上图所示的布局,编辑拨号按钮的id为callN...
  • lijizh1013
  • lijizh1013
  • 2012年09月09日 21:29
  • 2427

MySQL实践总结

一直在使用MySQL,本文就工作中常用的MySQL语句及查询优化进行简单的总结,方便自己记忆。...
  • z410970953
  • z410970953
  • 2016年01月06日 19:59
  • 931
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:实训总结(三)
举报原因:
原因补充:

(最多只允许输入30个字)