zoukankan      html  css  js  c++  java
  • 20155334 2016-2017-2 《Java程序设计》第二周学习总结

    20155334 2016-2017-2 《Java程序设计》第二周学习总结

    教材学习内容总结

    java中的基本类型
    • 整数:有shortintlong三种
    • 字节:byte
    • 字符:char,汉字、英文字符都是双字节的
    • 布尔:boolean,表示逻辑的真与假
    变量(数据暂存位置在程序语言中称为变量)
    • 变量的作用:用来暂时存储资料。
    • 变量命名时不可以使用数字作为开头,也不可以使用一些特殊字符同时不能与JAVA的关键字与保留字同名。
    • 可以运用驼峰式命名法。
    运算符
    • 加(+)、减(-)、乘(*)、除(/)以及取余(%)。
    • 比较、条件运算,当比较条件不成立的时候以boolean类型false表示,反之用该类型的true表示.
    • 逻辑运算,“且” &&、“或” ||、“反相” !
    • 位运算,&and、|or、^ xor、~(补码)、<<(左移)、>>(右移)
    • 递增递减运算,与C语言的表示方式基本一致
    • 指定运算,目前只有=这个运算符
    类型转换
    流程控制
    if...else条件式

    课本示例代码如下
    if...else条件式实现等级划分:

    public class Level {
        public static void main(String[] args) {
            int score = 88;
            char level; 
            if(score >= 90) {
                level = 'A';
            } 
            else if(score >= 80 && score < 90) {
                level = 'B';
            }
            else if(score >= 70 && score < 80) {
                level = 'C';
            }
            else if(score >= 60 && score < 70) {
                level = 'D';
            }        
            else {
                level = 'E';
            }
            System.out.printf("得分等級:%c%n", level);
        }
    }
    

    程序运行结果:

    switch条件式

    switch条件式实现等级划分:

    public class level2 {
        public static void main(String[] args) {
            int score = 88;
            int quotient = score / 10;
            char level;
            switch(quotient) {
                case 10:
                case 9:
                    level = 'A';
                    break;
                case 8:
                    level = 'B';
                    break;
                case 7:
                    level = 'C';
                    break;
                case 6:
                    level = 'D';
                    break;
                default:
                    level = 'E';
            }
            System.out.printf("得分等級:%c%n", level);
        }
    }
    
    

    程序运行结果:

    for循环

    1到10程序:

    public class OneToTen {
        public static void main(String[] args) {
            for(int i = 1; i <= 10; i++) {
                System.out.println(i);
            }
        }
    }
    
    

    程序运行结果:

    使用for循环实现九九乘法表程序:

    public class NineNineTable {
        public static void main(String[] args) {
            for(int j = 1; j < 10; j++) {
                for(int i = 2; i < 10; i++) {
                    System.out.printf("%d*%d=%2d ",i, j,  i * j);
                }
                System.out.println();
            }
        }
    }
    

    程序运行结果:

    课本上另外一种实现九九乘法表的程序:

    public class NineNineTable2 {
        public static void main(String[] args) {
            for (int i = 2, j = 1;  j < 10; i = (i==9)?((++j/j)+1):(i+1)) { 
                System.out.printf("%d*%d=%2d%c", i, j,  i * j, (i==9 ? '
    ' : ' '));
            }   
        }
    }
    

    程序运行结果:

    提示:
    for循环圆括号中的第二个复合描述块如果没有撰写,默认就是true。故有

    for(;;) {
        ...
    }
    

    表示无穷循环。

    while循环

    使用while循环实现随机停止

    public class RandomStop {
        public static void main(String[] args) {
            while(true) {  //直接执行循环
                int number = (int) (Math.random() * 10);   //随机产生0-9的书
                System.out.println(number);
                if(number == 5) {
                    break;  //如果遇到5就离开循环
                }
            }
            System.out.println("I hit 5....Orz");
        }
    }
    

    程序运行结果:

    课本上另外一种实现随机停止的程序代码:

    public class RandomStop2 {
        public static void main(String[] args) {
            int number;
            do {
                number = (int) (Math.random() * 10);  //先随机产生0-9的数
                System.out.println(number);
            } while(number != 5);  //再判断要不要重复执行
            System.out.println("I hit 5....Orz");
        }
    }
    

    程序运行结果:

    这两段代码的最主要区别在于随机数产生和判断步骤的先后顺序

    breakcontinue

    break可以离开当前switchforwhiledo...while的区块,并执行区块后下一个描述句。在switch中主要用来中断下一个case比较,在forwhiledo...while中,主要用于中断当前循环。

    教材学习中的问题和解决过程

    遇到的大部分问题经过类比C语言可以得到解决。

    代码调试中的问题和解决过程

    在代码调试过程中遇到在git中tree命令找不到,经过查询百度后应当下载文件。
    其余的代码照搬课本,没有遇到大问题。

    代码托管

    代码上传截图:

    代码量截图:

    上周考试错题总结

    • 错题 填空:知识分为三类元知识、硬知识、软知识,需要通过实践获得的是(软知识)。真理,一定牢记。
    • 填空:德雷福斯技能学习模型把技能获取分为五个阶段:新手、高级新手、胜任者、精通者、专家,其中( 新手 )不能离开详细的指令。真理,一定牢记。
    • 填空:(git push)将本地分支的更新,推送到远程主机。基本问题应当牢记。
    • 填空:git log 命令来查看(提交历史)。基本问题,应当牢记。

    感悟

    在学习过程中愈发体会到认真的重要性。其次发现Java与C语言有极大的相似之处,可以通过C语言的学习过程得到触类旁通的效果。

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 5000行 30篇 400小时
    第一周 5/5 1/1 10/10
    第二周 98/103 1/2 15/25

    参考:

    • 计划学习时间:10小时

    • 实际学习时间:15小时

    参考资料

  • 相关阅读:
    如何向尝试登录Windows 10的用户展示提示信息
    如何在Windows 10上创建和设置虚拟硬盘
    处理器虚拟化——VMX
    处理器虚拟化——基本数据结构
    DP
    Heap与Stack的区别
    获得内核模块 通过DriverSection
    软件管理器
    获取电脑软件信息 和 浏览器信息
    字符串之间的转换
  • 原文地址:https://www.cnblogs.com/bestixx/p/6506927.html
Copyright © 2011-2022 走看看