【Java初探实例篇01】——Java语言基础

示例系列,将对每节知识辅以实际代码示例,通过代码实际编写,来深入学习和巩固学习的知识点。


IDE:intellij IDEA;
语言:Java
本次示例:Java语言基础知识的应用。


  • 创建包day_4-1;并创建类sty_foundation。
package day_4_1;  // 包名

import java.util.Date;

/**
 * @outhor xiaoshe
 * @date 2019/4/1  - @time 20:01
 * Java语言基础练习,
 * 包括:主类结构,基本数据类型,变量与常量,运算符,数据类型的转换。
 */

public class sty_foundation {  // 主类 sty_foundation。
    static String author ="小舍先生";  // 静态成员变量的声明,在类体中,可以跨类调用。
    int Time=5; // 声明普通的成员变量。

    // 定义main主方法,这里主方法是一个静态的。
    public static void main(String[] args){
        // 先实例化一个对象,然后调用其实例方法。
        sty_foundation foundation = new sty_foundation();
        //调用方法。
        foundation.sty_integer(); // 整数类型方法。

        // 通过实例化对象调用方法输出两种浮点型数据。
        System.out.println("the double type:"+foundation.sty_double());
        System.out.println("the float type:"+foundation.sty_float());

        foundation.sty_char(); // 字符类型方法
        foundation.sty_boolean();// 布尔类型方法
        foundation.sty_AssignmentOperator();  //赋值运算符
        foundation.sty_ArithmeticOperators(); //算数运算符
        foundation.sty_Self_IDOperators(); //自增自减运算符
        foundation.sty_ComperisonOperators(); // 比较运算符
        foundation.sty_LogicalOperators(); // 逻辑运算符
        foundation.sty_BitOperators(); // 位运算符
        foundation.sty_shiftOperators(); // 移位运算符
        foundation.sty_TernaryOprator(); // 三元运算符
        foundation.sty_Dataconversion(); // 数据类型转换
    }
    // 类体内,可以声明多个方法体,但只有主方法才能被执行,
    /**
     * 整数类型。
     * 根据占用内存大小分为 byte,short,int,long。
     */
    public void sty_integer(){
        // 几种基本整型数据类型的定义与输出,数据类型的选择通常需要考虑所储存的数据的大小范围。
        // 基本数据类型的变量的定义,在这里也相当于是一些局部变量的声明,在方法体内。
        //局部变量的生命周期与其调用有关,在调用它时,JVM为其分配空间,在方法结束后,就会释放掉。
        byte abyte=34;
        short ashort=14556;
        int aint=34546453;
        long along = -34358234;
        // 输出,可以让字符串和变量多层复合输出。
        System.out.println("abyte:"+abyte+"ashort:"+ashort+"aint:"+aint+"along:"+along);
    }
    /**
     * 浮点类型
     * 浮点类型表示有小数部分的数,
     * Java语言浮点类型分为单精度浮点类型(float)双精度浮点类型(double)
     * 它们具有不同的取值范围
     * @return
     */
    public double sty_double(){
        double adouble=23.14356;
        return adouble;
    }
    public float sty_float(){
        float afloat = 34.2343f;
        return afloat;
    }
    /**
     * char型用于储存单个字符,占用2个字节(byte)16位(bit)。
     * 在定义字符型变量时,要使用单引号表示。
     * 也可通过整数表示。
     */
    public void sty_char(){
        // 声明字符型变量。java语言也可以将字符作为整数对待,unicode编码可以储存65536个字符。
        // 我们可以通过char转换0~65536之间的任意字符。
        char achar ='b';
        char achar1 = 34564;
        System.out.println("the char:"+achar);
        System.out.println("the char1:"+achar1);
    }
    /**
     * boolean数据类型(逻辑类型),只有true和false两个值。
     * boolean类型不能和整数类型转换。
     * boolean类型通常用在流程控制中作为判断条件。
     */
    public void sty_boolean(){
        boolean c;
        int a=3,b=4;
        boolean aboolean = a>b;
        System.out.println(aboolean);
    }
    /**
     * 赋值运算符
     * =表示,是一个二元运算符
     * 其功能是将右边的操作数的值赋给左边的操作数
     * 可以复合多重使用
     */
    public void sty_AssignmentOperator(){
        int a,b=4;
        a = b=b+4;
        System.out.println("a="+a+"b="+b);
    }
    /**
     * 算数运算符
     * java中的算数运算符主要有加减乘除取余。
     * 二元运算符。
     */
    public void sty_ArithmeticOperators(){
        float afloat = 45.346f;
        int aint = 35;
        System.out.println("afloat+aint="+(afloat+aint));
        System.out.println("afloat-aint="+(afloat-aint));
        System.out.println("afloat*aint="+(afloat*aint));
        System.out.println(("afloat/aint="+afloat/aint));
        System.out.println("afloat%aint="+(afloat%aint));
    }
    /**
     * 自增自减运算符
     * 单目运算符
     * 放在操作数前,先加减后运算,放在操作数后,先运算后加减
     * 操作数必须是一个整型或浮点型变量
     */
    public void sty_Self_IDOperators(){
        int a=4;
        int b=++a;
        System.out.println("b=++a:"+b);
        a=4;
        b=a++;
        System.out.println("b=a++:"+b);
        System.out.println("a="+a);
    }
    /**
     * 比较运算符
     * 二元运算符
     * 用于变量,自变量之间的比较
     * 结果位布尔型
     */
    public void sty_ComperisonOperators(){
    int a=4,b=6;
    boolean aboolean = a<b;
    boolean aboolean1 = a>b;
    boolean aboolean2 = a==b;
    boolean aboolean3 = a>=b;
    boolean aboolean4 = a<=b;
    boolean aboolean5 = a!=b;
        System.out.println("a<b:"+aboolean);
        System.out.println("a>b:"+aboolean1);
        System.out.println("a==b:"+aboolean2);
        System.out.println("a>=b:"+aboolean3);
        System.out.println("a<=b:"+aboolean4);
        System.out.println("a!=b:"+aboolean5);
    }
    /**
     * 逻辑运算符
     * 返回值位布尔值的表达式如比较运算符,可以组合在一起构成一个更复杂的表达式。
     * 就是通过逻辑运算符来实现的。
     * 逻辑运算符包括:&,&&(逻辑与),||(逻辑或),!(逻辑非)
     * 逻辑运算符操作元必须是Boolean型数据。
     * 在逻辑运算符除了!是医院运算符,其他都是二元运算符。
     */
    public void sty_LogicalOperators(){
        int a=2,b=5;
        boolean aboolean = ((a>b)&&(a!=b));
        boolean aboolean1 =((a>b)||(a!=b));
        System.out.println("逻辑与:"+aboolean);
        System.out.println("逻辑||:"+aboolean1);
    }
    /**
     * 位运算符
     * 按位与,两个整型数据对应位都是1,则结果位为1,否则为0。
     * 按位或,两个整型数据对应位都是0,则结果位0,否则为1。
     * 按位取反,就是将操作数中的1改为0,0改为1.
     * 按位异或,当两个操作数的对应位相同的时,结果为0,否则为1。
     */
    public void sty_BitOperators(){
        int a=6,b=4;
        System.out.println("a=6,b=4按位与:"+(a&b));
        System.out.println("a=6,b=4按位或:"+(a|b));
        System.out.println("a=6按位取反:"+~a);
        System.out.println("a6,b=4按位异或:"+(a^b));
    }
    /**
     * 移位运算符
     * << 左移,>>右移,>>>无符号右移
     * 移位运算符适用于整数类型
     * 移位可以实现乘除2^n的效果
     */
    public void sty_shiftOperators(){
        int a=4;
        System.out.println("a=4右移:"+(a>>1));
        System.out.println("a=4左移:"+(a<<1));
    }
    /**
     * 三元运算符
     * 条件式?值1:值2,当关系式结果为true时取值1,否则取值2。
     * 三元运算符等价于if...esle语句。。
     */
    public void sty_TernaryOprator(){
        boolean b=20<45?true:false;
        System.out.println(b);
    }
    /**
     * 数据类型转换
     * 隐式类型转换,低级类型向高级类型转换时,系统自动执行。
     * 显示类型转换,即强制类型转换,高精度变量的值赋给低精度的变量。
     * 显示类型转换会导致信息损失,除了Boolean型,其他数据类型都可以通过强制类型转换得到。
     */
    public void sty_Dataconversion(){
        // 声明不同数据类型变量
        byte abyte=125;
        int aint = 234;
        float afloat = 345.342f;
        char achar = 30;
        double adouble = 312.56;

        System.out.println("byte型与float型相加:"+(abyte+afloat)); // 隐式类型转换
        System.out.println("byte型与char型相加:"+(abyte+achar));
        System.out.println("int型与double相加:"+(aint+adouble));

        System.out.println("char强制类型转换为int:"+(int) achar); // 强制类型转换
        System.out.println("double强制类型转换为int:"+(int) adouble);
    }
}

运行结果:
2019-4-2-01.png

2019-4-2-02.png


更新时间:
2019-4-1
1:23

posted @ 2019-04-02 01:40  小舍先生  阅读(334)  评论(0编辑  收藏  举报