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

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

    教材学习内容总结

    关于Unicode和UTF

    很抱歉,没能读完娄老师推荐的网址,关于Unicode和UTF的介绍,里面全是繁体字Unicode和UTF,我继而求助了百度百科,下面是百度上的解释:

    • Unicode(统一码、万国码、单一码)是计算机科学领域里的一项业界标准,包括字符集、编码方案等。Unicode是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。1990年开始研发,1994年正式公布。
    • UTF-8(8-bit Unicode TransformationFormat)是一种针对Unicode的可变长度字符编码,又称万国码。由KenThompson于1992年创建。现在已经标准化为RFC3629。UTF-8用1到4个字节编码Unicode字符。用在网页上可以统一页面显示中文简体繁体及其它语言(如英文,日文,韩文)。
    • UTF-16是Unicode字符编码五层次模型的第三层:字符编码表(CharacterEncodingForm,也称为"storageformat")的一种实现方式。即把Unicode字符集的抽象码位映射为16位长的整数(即码元)的序列,用于数据存储或传递。Unicode字符的码位,需要1个或者2个16位长的码元来表示,因此这是一个变长表示。

    就我的理解,Unicode是一种标准,一种规范计算机上字符的书写与二进制编码转换的标准,共有17组编排,0x0000 至 0x10FFFF
    基本涵盖了世界上所有语言字符和特殊字符,之后的UTF-8,UTF-16都是由此延伸出来的编码方案,其中UTF是有1个字节到4个字节来编码字符,咱们网站上的字符形式就是那样的,凡是有过编写网站经历的,都在里面写过<meta charset="UTF-8"/>而UTF-16则是一律以二字节存储,特别的java用的是Unicode编码,而JVM用的是UTF-16编码。

    java语法知识与C语言基本语法知识对比

    在还没涉及到类和对象的时候,java语法和C语言语法大同小异

    java语法 C语言语法
    输入 输入很复杂,其中简单的从键盘上输入一个字符System.in.read() scanf()基本上包罗了所有形式输入
    输出 System.out.print() printf()
    输出连接符 “+”号 “,”或者没有
    定义常量 final double PI=3.14 可以预定义#define PI 3.14也可以const double PI=3.14

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

    • 问题:怎么比较两个float型数?
    • 答:和C语言里相似,因为float型只定义到小数点后六位,于是对于两个float数m、n和boolean数BB=(m-n>=1e-6)如果B=1则m>=n,否则m<n。
    • 问题:java语言怎么从键盘输入?
    • 答:这是一个很复杂的问题,不像C语言,片言只语可以解释,这就已经和java里的类和对象扯上关系了。咱们可以从这个网站上java类简单学习一下类的概念,不过挺多的,简而言之就是先创建一个类,在用这个类在main路径上定义个对象,了解了这些后,在看下java输入中的三个输入方式,这样就基本上学好了C语言里一个scanf()函数就能完成的功能。

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

    对于初期的代码学习,其实也就是逐字逐词输入,只有要注意的地方:

    • 文件名要和类的名字保持一致;
    • 如果一个main路径的类,需要调用已存在的类,为了方便要在代码前加上import ···,以减少后续代码的重复输入某词,如果需要调用自己创建的类,则需要保证类的命名不能重复已存在的任何类;
    • 类和一般操作之间要有.间隔;
    • 对于private类里面的变量,需要里面的操作才能赋值,类外无法对其进行赋值;
    • 其他需要注意的点和C语言差不多。

    代码托管

    • 代码提交过程截图

    • 代码量截图:

    上周考试错题总结

    卷一,第十六题

    • Linux Bash中,查找home目录中昨天创建的文件的命令是(find ~ -ctime 1),我重新查找学习了find指令,以及选项ctime.
    • amin n 查找系统中最后N分钟访问的文件
    • atime n 查找系统中最后nx24小时访问的文件
    • cmin n 查找系统中最后N分钟被改变文件状态的文件
    • ctime n 查找系统中最后nx24小时被改变文件状态的文件
    • mmin n 查找系统中最后N分钟被改变文件数据的文件
    • mtime n 查找系统中最后n*24小时被改变文件数据的文件

    卷二,第三题

    • 德雷福斯技能学习模型把技能获取分为五个阶段:新手、高级新手、胜任者、精通者、专家,其中( 新手 )不能离开详细的指令。
    • 这五个阶段,新手需要大量的指令,而大部分人都处在胜任者。

    卷二,第二十八题

    • git log 命令来查看(提交历史)。
    • 之后我有查找了写关于git的相关指令
    git指令 用途
    git clone 以gitreadonly方式克隆到本地,只可以读
    git pull 获取并合并内容到本地
    git add 添加文件到本地仓库
    git rm 本地倒库内删除
    git commit -m "first commit" 提交到本地库并备注,此时变更仍在本地
    git commit -a 自动更新变化的文件,a可以理解为auto
    git remote add xxx git@github.com:xxx/xxx.git 增加一个远程服务器的别名
    git remote rm xxx 删除远程版本库的别名
    git push -u remotename master 将本地文件提交到Github的remoname版本库中。此时才更新了本地变更到github服务上。

    其他(感悟、思考等,可选)

    学习是一个积累的过程,是一个循序渐进的过程,而实践更需要有足够的毅力和勇气去试错,去长记性。每一个字符,每一行代码都是进步,即便是删除的那部分。我目前已经实现两位数的加减乘除,从带着C语言的余味到品尝到java的新味,确实很不赖,下面是我这一个星期的过程与成果:

    public class Number{
       public static void main(String[] args){
         System.out.println("a="+3+",b="+4);
    }
    }
    
    import java.io.BufferedReader;    
    import java.io.IOException;    
    import java.io.InputStreamReader;    
    import java.util.Scanner;
    class Two{
       int fir;
       int sec;
       Two(int a,int b){
      fir=a;
      sec=b;
      }
    int add(){
         return fir+sec;
    }
    int sub(){
         return fir-sec;
    }
    int mul(){
         return fir*sec;
    }
    int div(){
        return fir/sec;
    }
    }
    public class Caculate{
       public static void main(String[] args){
        Two mytwo=new Two(12,4);
        int result=mytwo.add();
        try{System.out.println("Please input '+' '-' '*' '/'");
        System.out.print("Enter a Char:");   
          char c = (char)System.in.read();
    
    
       if(c=='+')  System.out.println("12+4="+result);  
       if(c=='-')  System.out.println("12-4="+mytwo.sub());
        if(c=='*') System.out.println("12*4="+mytwo.mul());
        if(c=='/') System.out.println("12/4="+mytwo.div());}
    catch(IOException e){   
          e.printStackTrace();   
        }
    }
    }
    
    import java.io.BufferedReader;    
    import java.io.IOException;    
    import java.io.InputStreamReader;    
    import java.util.Scanner;
    class Two1{
       int fir;
       int sec;
       Two1(){
    Scanner sc=new Scanner(System.in);
      System.out.print("Enter a Number:");
         fir = sc.nextInt();
        System.out.print("Enter another Number:");
         sec = sc.nextInt();   
    }
    int add(){
         return fir+sec;
    }
    int sub(){
         return fir-sec;
    }
    int mul(){
         return fir*sec;
    }
    int div(){
        return fir/sec;
    }
    }
    public class Caculate01{
       public static void main(String[] args){
        Two1 mytwo1=new Two1();
        int result=mytwo1.add();
        try{System.out.println("Please input '+' '-' '*' '/'");
        System.out.print("Enter a Char:");   
          char c = (char)System.in.read();
       if(c=='+')  System.out.println(mytwo1.fir+"+"+mytwo1.sec+"="+result);  
       if(c=='-')  System.out.println(mytwo1.fir+"-"+mytwo1.sec+"="+mytwo1.sub());
        if(c=='*') System.out.println(mytwo1.fir+"*"+mytwo1.sec+"="+mytwo1.mul());
        if(c=='/') System.out.println(mytwo1.fir+"/"+mytwo1.sec+"="+mytwo1.div());}
    catch(IOException e){   
          e.printStackTrace();   
        }
    }
    }
    

    下面是用用switch语句优化后的:

    import java.io.BufferedReader;    
    import java.io.IOException;    
    import java.io.InputStreamReader;    
    import java.util.Scanner;
    class Two1{
       int fir;
       int sec;
       Two1(){
    Scanner sc=new Scanner(System.in);
      System.out.print("Enter a Number:");
         fir = sc.nextInt();
        System.out.print("Enter another Number:");
         sec = sc.nextInt();   
    }
    int add(){
         return fir+sec;
    }
    int sub(){
         return fir-sec;
    }
    int mul(){
         return fir*sec;
    }
    int div(){
        return fir/sec;
    }
    }
    public class Caculate01{
       public static void main(String[] args){
        Two1 mytwo1=new Two1();
        int result=mytwo1.add();
        try{System.out.println("Please input '+' '-' '*' '/'");
        System.out.print("Enter a Char:");   
          char c = (char)System.in.read();
          switch(c){
       case '+':  System.out.println(mytwo1.fir+"+"+mytwo1.sec+"="+result);  break;
       case '-' : System.out.println(mytwo1.fir+"-"+mytwo1.sec+"="+mytwo1.sub());break;
        case '*': System.out.println(mytwo1.fir+"*"+mytwo1.sec+"="+mytwo1.mul());break;
        case '/': System.out.println(mytwo1.fir+"/"+mytwo1.sec+"="+mytwo1.div());break;
        default :
        System.out.println("Error input!");}
        }
    catch(IOException e){   
          e.printStackTrace();   
        }
    }
    }
    

    最终能达到的效果是:

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 5000行 30篇 400小时
    第二周 98/100 1/1 30/38 已经对java的编程有个大体认识,以及对类和对象有了基本的认识

    参考资料

  • 相关阅读:
    Druid 使用 Kafka 将数据载入到 Kafka
    Druid 使用 Kafka 数据加载教程——下载和启动 Kafka
    Druid 集群方式部署 —— 启动服务
    Druid 集群方式部署 —— 端口调整
    Druid 集群方式部署 —— 配置调整
    Druid 集群方式部署 —— 配置 Zookeeper 连接
    Druid 集群方式部署 —— 元数据和深度存储
    Druid 集群方式部署 —— 从独立服务器部署上合并到集群的硬件配置
    Druid 集群方式部署 —— 选择硬件
    Druid 独立服务器方式部署文档
  • 原文地址:https://www.cnblogs.com/elevator/p/6502919.html
Copyright © 2011-2022 走看看