JAVA 基础知识入门

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u013514722/article/details/49383599

整数的类型:

                   byte   8 bit
                  short  16 bit
                  int    32 bit
                  long   64 bit
注意:
  一个整数后没有加L时,默认为int类型。
   if 要把一个数定义为long类型,需要在这个数后面加L。

小数的类型:

            float     32 bit      可以保留7位小数位
            double     64 bit      可以保留15位小数位
  注意:
 一个小数如果后没有标识符时,默认为double类型。
  if 要定义为float类型,需要在这个数后面加f。f不区分大小写。

布尔类型:

 只有两个值 true or  false
          boolean   1个字节或者4个字节
注意:
 if  boolean 声明一个基本类型的变量时, 该变量占4个字节
 if  boolean 声明一个数组类型时, 每个数字类型占1个字节

字符类型:

         char   2个字节 (16 bit) 

class文件执行注意:

 1.一个class文件要在使用时才会加载到内存中,而静态代码块在文件
    加载中执行。

代码:


 class  demo1
{

    public static void main(String[] args) 
    {

        System.out.println(10);
        System.out.println(0b10);   //将一个二进制数以十进制输出      二进制以0b开头
        System.out.println(010);     //将一个八进制数以十进制输出    八进制以0开头
        System.out.println(0x10);    //将一个十六进制数以十进制输出  十六进制以0x开头

        long mong = 10000000000000000L;
        System.out.println(mong);
        float mong = 4.55555f;
        System.out.println(mong);
        boolean mong = true;
        System.out.println(mong);
        */

    }
}

class nihao
{
    /*凡是byte, short,char数据类型在运算时都会自动传换成int类型的数据。 
      java  编译器在编译时能够确认一个常量的值,并判断这个常量是否在所定义的数据类型,并允许赋值。
        但在编译时不能确定变量里存储的值。 变量里存储的值是在运行时才分配空间。
     */
    public static void main( String []  args){
      int i = 10;
      long j = 20L; 
      i = (int)(i + j);
      System.out.println(i);  
    }
}

class nihao
{

    public static void main( String []  args){
      byte b1 = 1;
      byte b2 = 2;
      // b2 = b2 + b1;   //报错。。需要强制转换。
      b2 += b1; //java编译器已经进行强制转换。 
      System.out.println(b2);

      byte s =10;
      long t = 30;
       System.out.println(s<t); // 两个不同数据类型可以比较大小,比较时会先把b的类型转换为long类型。
    }
}


class nihao
{
     //位运算可能出现的笔试题:
    // 1,交换两个变量的值,不准出现第三方变量
    // 2. 取出一个二进制的指定位数。
    public static void main( String []  args){
       int a = 3;
       int b = 5;
       a= a^b;
       b= a^b;
       a= a^b;
       System.out.println("a = "+ a + "b = " + b);  
    }
}


class nihao
{
     // 如果+号用于字符串的时候,+ 号就是连接符。
    public static void main( String []  args){
       int i1 = 13;
      System.out.println(1 + 2 +3 + 4 + "ssss" + 5 + 6);  
      // 输出  10ssss56
    }
}

class nihao
{
     //取模运算时,结果的正负取决于被除数的正负。
    public static void main( String []  args){
      double a = 10.00;
      int  b = 3;
      System.out.println(a/b);      //输出 3.33333333333335 
        System.out.println(-a%b);    //输出 -1.0 
        System.out.println(a%-b);    //输出 1.0 
        System.out.println(-a%b);    //输出 -1.0 

    }
}


class nihao
{
    /*
    后自增(i++)在jvm的运行原理:
       jvm 会先声明一个变量用于保存没有 +1 之前的值。
       1. int  temp = i;
       2. 自增。 i = i + 1;
       3. temp 的值返回给表达式结果。 
       i 的 值发生几次变化:
         i = 0 -----> 1 ------> 0  */

    public static void main( String []  args){
        int  i = 0;
        i = i++;   
        System.out.println("i = "+i);     //输出 0 
    }
}


class nihao
{

    public static void main( String []  args){
      byte b1 = 1;
      byte b2 = 2;
      // b2 = b2 + b1;   //报错。。需要强制转换。
      b2 += b1; //java编译器已经进行强制转换。 
      System.out.println(b2);     
}

class demo1
{
    public static void main(String[] args ){
          int[] arr = new int[2];
          arr = null;
          arr[1] = 10;
        System.out.println(arr[1]);
        // 该程序会报错  空指针异常
    }
}

猜你喜欢

转载自blog.csdn.net/u013514722/article/details/49383599