阅读535 返回首页    go 阿里云 go 技术社区[云栖]


1datetype

//基本数据类型包括4类(共8种)
//Java数据类型包含:基本数据类型和引用数据类型
//引用数据类型包括:类、接口和数组,

public class DataType{
public static void main(String args[]){
//变量:程序执行过程中变量的值可以改变
//作用:用来存放数据的,方便对数据的操作
//定义格式:
/*
数据类型 变量名称 = 值;
*/

    /*
        基本数据类型     关键字    占得字节数 默认值
        字节型       byte    1       0
        短整型       short   2       0
        整形      int 4       0
        长整型       long    8       0L
        单精度浮点型  float   4       0.0F
        双精度浮点型  double  8       0.0
        字符型       char    2       '\u0000'
        布尔型       boolean 1位        false

    */

    //字节型:byte   占一个字节
    byte b=100;
    System.out.println("b="+b); //+的作用将""中的内容和b的值拼接起来

    b=127;              //只能表示-128到127
    System.out.println("b="+b);

    //短整型:short  占2个字节 
    short s=10000;
    System.out.println("s="+s);

    //s=100000;     //超出最大值

    //整型:int  占4个字节
    int i=100000;
    System.out.println("i="+i);

    //i=10000000000;

    //长整型:long  占8个字节
    long l=10000000000L;        //整型数字面量的默认类型是int,表示long后面加上l或L
    System.out.println("l="+l);

    //单精度浮点数:float    占4个字节
    float f = 0.123456789F;     //小数字面量的默认类型是double,表示float加f或F
    System.out.println("f="+f);

    //双精度浮点数:double 占8个字节
    double d = 0.12345678999;
    System.out.println("d="+d);

    //字符型:char  占2个字节(采用的是unicode编码)
    char c = 'a';       //将字符用单引号括起来
    System.out.println("c="+c);
    c = 97;
    System.out.println("c="+c);
    c='中';
    System.out.println("c="+c);

    //转义字符:有以\开头的字符,\的作用将后面字符的意义改变了
    c='\t';           //\n  \b   \r
    System.out.println("c="+c+"]");
    c='\'';     //输出单引号、双引号、\
    System.out.println("c="+c);
    //c='\a';   //非法的转义字符

    //布尔型:boolean  取值范围:true,false,用1位表示就够了
    boolean flag = true;
    System.out.println("flag="+flag);
    flag=false;
    System.out.println("flag="+flag);

    //常量:程序执行过程中常量的值不能修改
    //定义常量使用final       
    final double PI = 3.14;
    System.out.println("PI="+PI);

    //PI=3.14159;  //常量赋值以后不能修改

    //String类型不是基本类型,但是比较常用
    String  str = "好好学习";
    System.out.println("str="+str); 



}

}
//这是注释版的程序
/*
注释的作用:提高代码的可读性
辅助程序调试
//注释写在文件开头处或需要说明的内容附近

*/
public class Test1{
//下面定义一个main()方法,它是程序的入口地址
public static void main(String args[]){ //static 是一个关键字

    System.out.println("Test"); //输出的内容写在“”中

}

}
//数据类型转换
public class TypeCast{
public static void main(String args[]){
//数据类型转换有两种情况:自动类型转换和强制类型转换
//自动类型转换的条件
//1.类型兼容
//2.表示范围扩大
//自动类型转换一般不会出现问题
//优先级由低到高:byte short char int long float double

    byte b=100;
    int i=b;
    System.out.println("i="+i);
    float f=b;
    System.out.println("f="+f);

    //强制类型转换
    //    (要转的数据类型)值
    //可能会出现问题
    byte b2 = (byte)i;
    System.out.println("b2="+b2);
    b2 = (byte)3.14F;
    System.out.println("b2="+b2);   //3  小数点后被舍弃
    b2 = (byte)128;
    System.out.println("b2="+b2);   //-128  取最低一个字节,高位被舍弃

    double d=129.95;
    i = (int)d;
    System.out.println("i="+i);
    b2 = (byte)d;
    System.out.println("b2="+b2);



}

}
//运算符
public class Calculate{
public static void main(String args[]){

    //算数运算符:+、-、*、/、%、++、--
    int a=3;
    int b=2;
    int c=a+b;
    System.out.println("c="+c);
    c=a%b;          //取与、求模
    System.out.println("c="+c);
    //自增:++
    //前缀++:自身先增加,然后再其他操作
    //后缀++:先其它操作,再自身增加
    c=a++;
    System.out.println("c="+c);     //3
    System.out.println("a="+a); //4 
    c=++a;
    System.out.println("c="+c);     //5
    System.out.println("a="+a); //5
    //自减:--


    //关系运算符: ==  !=  >  >=  <  <=
    //关系运算符的结果是一个布尔类型的值
    a=3;b=2;
    boolean flag = a>b;
    System.out.println("flag="+flag);  //true

    //布尔逻辑运算符:& | !^  &&  || 
    //&:    两个值都为true 结果才为true
    //|:    只要有一个值为true,结果就为true
    //!:    取反 true变false  false变true
    //^:    相同为false 不同为true
    boolean flag2= !(true^false);
    System.out.println("flag2="+flag2);

    //简洁与:&& 简洁或:||
    //和非简洁与相比,具有短路功能
    //第一个表达式结果决定最终的结果,短路功能不会去运行第二个表达式了

    a=6;b=8;c=10;
    int d=12;

    boolean flag3 = ++a>b++ && c++>d--;
    System.out.println("flag3="+flag3);  //false
    System.out.println("a="+a); //7
    System.out.println("b="+b); //9
    System.out.println("c="+c); //10
    System.out.println("d="+d); //12

    //练习:将以上&&改成&  或  || 

    //赋值运算符:= += -= *= /= %=
    a=3;b=2;
    a += b;   //a=a+b
    System.out.println("a="+a);


    //条件运算符,也称三目运算符
    //(表达式1)?表达式2:表达式3
    //表达式1结果是布尔类型,表达式2和表达式3类型相同
    //表达式1为true,取表达式2的结果,为false时取表达式3的结果
    a=3;b=2;
    int result = (a<b)?1000:100;
    System.out.println("result="+result);  //100

    //位运算符:& | ~ ^ << >>  >>>
    a=3;
    b=2;
    c = a&b;
    System.out.println("c="+c);  //2
    c=~a;
    System.out.println("c="+c);  //-4

    c=a<<2;   //左移若干位,右边补0
    System.out.println("c="+c);

    a=-2;

    c=a>>1;  //右移若干位,左边补符号位
    System.out.println("c="+c);//1

    c=a>>>1;  //无符号右移若干位,左边补0
    System.out.println("c="+c);//1



}

}
public class Test2{
public static void main(String args[]){
int a=3;
int b=2;
int c=a/b; //两个int相除结果为int类型
System.out.println("c="+c); //1
float f=a/b;
System.out.println("f="+f); //1.0
f = (float)a/b;
System.out.println("f="+f); //1.5
f = (float)(a/b);
System.out.println("f="+f);

    //()提高运算的优先级
    //练习1:   输出1-a/b的值,输出(1-a)/b
    c=1-a/b;
    System.out.println("c="+c);
    c=(1-a)/b;
    System.out.println("c="+c);

    byte b1=3;
    byte b2=2;
    byte b3 = (byte)(b1+b2);     //byte运算时转成int
    System.out.println("b3="+b3);
    b1 += b2;  //b1=(byte)(b1+b2)
    System.out.println("b1="+b1);

}

}
public class Test2{
public static void main(String args[]){
int a=3;
int b=2;
int c=a/b; //两个int相除结果为int类型
System.out.println("c="+c); //1
float f=a/b;
System.out.println("f="+f); //1.0
f = (float)a/b;
System.out.println("f="+f); //1.5
f = (float)(a/b);
System.out.println("f="+f);

    //()提高运算的优先级
    //练习1:   输出1-a/b的值,输出(1-a)/b
    c=1-a/b;
    System.out.println("c="+c);
    c=(1-a)/b;
    System.out.println("c="+c);

    byte b1=3;
    byte b2=2;
    byte b3 = (byte)(b1+b2);     //byte运算时转成int
    System.out.println("b3="+b3);
    b1 += b2;  //b1=(byte)(b1+b2)
    System.out.println("b1="+b1);

}

}
public class Test2{
public static void main(String args[]){
int a=3;
int b=2;
int c=a/b; //两个int相除结果为int类型
System.out.println("c="+c); //1
float f=a/b;
System.out.println("f="+f); //1.0
f = (float)a/b;
System.out.println("f="+f); //1.5
f = (float)(a/b);
System.out.println("f="+f);

    //()提高运算的优先级
    //练习1:   输出1-a/b的值,输出(1-a)/b
    c=1-a/b;
    System.out.println("c="+c);
    c=(1-a)/b;
    System.out.println("c="+c);

    byte b1=3;
    byte b2=2;
    byte b3 = (byte)(b1+b2);     //byte运算时转成int
    System.out.println("b3="+b3);
    b1 += b2;  //b1=(byte)(b1+b2)
    System.out.println("b1="+b1);

}

}

最后更新:2017-06-05 10:01:44

  上一篇:go  《配置管理最佳实践》——2.3 构建工程的核心概念
  下一篇:go  《配置管理最佳实践》——2.2 从哪里开始