zoukankan      html  css  js  c++  java
  • Java 基础知识(一)

    1.JDK与JRE

    1)JDK:Java Development Kit,顾名思义是 java 开发工具包,是程序员使用 java 语言编写 java 程序所需的开发工具包,是提供给程序员使用的。JDK 包含了 JRE,同时还包含了编译 java 源码的编译器 javac,还包含了很多 java 程序调试和分析的工具。
    2)JRE :Java Runtime Environment 的缩写,顾名思义是 java 运行时环境,包含了 java 虚拟机,java 基础类库;是使用 java 语言编写的程序运行所需要的软件环境,是提供给想运行 java 程序的用户使用的,还有所有的 Java 类库的 class 文件,都在 lib 目录下,并且都打包成了 jar。
     注意:配置系统变量:JAVA_HOME-->c:Programer Filesjavajdk1.8.0.201
                               CLASSPATH-->.;%JAVA_HOME%lib
                               PATH:-->%JAVA_HOME%in
    2.javac和javap
    1)javac: 编译.java文件  javac -d 文件路径  a.java  在文件夹生成.class文件;
    2)javap: 反编译,java -c a.class   将字节码转为汇编代码;
    3)java:  java a.class 或者 java -jar a.jar
    3.char 的表示方式
         char x = ‘A’;     char x = 65;  Unicode表示 char x='4e00'
    4."admin".equals(username)与"username".equals(admin)
        前者编码规范健壮性好   后者:username==null 会引起空指针异常,前者admin时常量,所以健壮性好
    5.int Integer
    int 包装类是Integer  从 Java 5 开始引入了自动装箱/拆箱机制,使得二者可以相互转换。
    int-->Integer:
    int i=1;
    Integer integer=new Integer(i);
    Integer integer=Integer.valueOf(i);
    

    Integer-->int:

    Integer integer=new Integer(1);
    int i=integer.intValue();
    int j=(int)integer;
    基本类型  byte short       char         int     long   float double boolean
    包装类型  Byte Short Character Integer Long Float Double Boolean

    后续:string-->int:

    String str = "10"; 
    int i = Integer.intValue(string);
    

       string-->Integer:

    String str = "10";
    Integer it = Integer.valueOf(str);
    

      int-->string:

    int i = 10;
    String s = String.valueOf(i);//第一
    String s = Ingeger.toString(i);//第二
    String s = "" + i;//第三
    

      Integer-->string:

    Integer it = new Integer(10);
    String str = it.toString();
    

      string-->BigDecimal:

    BigDecimal bd = new BigDecimal(str);

    6. == 与 equals

     == 判断变量或实例是否指向同一方向;内存地址进行比较;引用是否相同

     equals: 对象的内容是否相等   object中equals未被重写,和 == 使用方法相同

    7. & 与 &&

     &:按位取与;逻辑运算与,无短路运算

    &&:逻辑运算与,存在短路运算:从左到右,左边为false,则不继续判断

    8. short s1=1 s1=s1+1 与 short s1=1 s1+=1

    前者 s1是short,1是int,s1+1也是int,int转为short,会存在损失

    后者 s1+=1 暗含强制转换,可以正确编译

    9.如何跳出当前多重嵌套循环

    在最外层循环前加一个标记如 A,然后用 break A;可以跳出多重循环。
    public static void main(String[] args) {
     boolean f = true;
    for (int i = 0; i < 10; i++) {
         for (int j = 0; j < 10 && flag; j++) {
                    if (j == 5)
                        f= false;
               }
         }
     }
    

    10.ceil floor和round

      1)ceil:Math.celi(i), 向上取整,返回值为double型

      2)floor: Math.floor(i), 向下取整,返回值为double型

      3)round: Math.round(i), i+0.5然后向下取整,返回值为long型

  • 相关阅读:
    libcurl进行HTTP GET获取JSON数据(转载)
    c/c++ 动态申请数组(转载)
    利用注册表写开机启动程序(转载)
    VC++使用IMAPI调用Outlook邮箱客户端和Foxmail邮箱客户端遇到的问题
    解决Duilib集成CEF浏览器在Win10无法向客户区拖拽文件
    解决往监控目录拖拽文件夹无法监控到的问题
    VC++ 实现修改文件创建、访问、修改时间属性(转载)
    Windows中的时间(SYSTEMTIME和FILETIME) (转载)
    ThinkPHP真正疑难问题笔记
    git版本控制管理实践-4
  • 原文地址:https://www.cnblogs.com/dxjx/p/12447189.html
Copyright © 2011-2022 走看看