栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java基础数据类型和运算符

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java基础数据类型和运算符

类型转换

由于java是强类型语言,所以要进行有些运算的时候需要用到类型转换。

低 ------------------------------------------------------------------------高

byte,short,char->int->long->float->double
public class HelloWorld {
    public static void main(String[] args) {
        int i = 128;
        byte b =(byte)i;//强制将i的类型转换为byte,这里存在内存溢出的问题,Byte最大值是127,最小值-128,所以这里的值会出问题
        //强制类型转换   (类型)变量名    高-->低
        //自动转换   低-->高
        
        //System.out.println(i);
        //System.out.println(b);
        
        System.out.println((int)21.3);//byte输出为:21   高转低,强制转换,精度丢失
        System.out.println((int)-21.89f);//float输出为:-21
    }
}

public class HelloWorld {
    public static void main(String[] args) {
        //操作比较大的数的时候,注意溢出问题
        //JDK7新特性,数字之间可以用下划线分割
        int noney = 10_0000_0000;
        System.out.println(noney);//输出:1000000000
        int years = 20;
        int total = noney*years;
        System.out.println(total);//输出值:-1474836480  计算的时候溢出了
        long total1 = noney*years;
        System.out.println(total1);//输出值:-1474836480  默认是int,转换之前已经存在问题了?
        long total2 = noney*((long)years);//先把一个数转换为long
        System.out.println(total2);//输出值:20000000000  
    }
}
变量

变量是什么:就是可以变化的量,每个变量都必须声明其类型

java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域

type varName  [=value] [{,varName[=value]}];
//数据类型 变量名 = 值;可以使用逗号隔开来声明多个同类型变量

  • 注意事项:

    ​ 每个变量都有类型,类型可以是基本类型,也可以是引用类型。

    ​ 变量名必须是合法的标识符。

    ​ 变量声明是一条完整的语句,因此每个声明都必须以分号结束。

实例变量
public class HelloWorld {
    //属性:变量
    //实例变量:从属于对象;如果不自行初始化,这个类型的默认值为  0  0.0
    //布尔值默认   false
    //除了基本类型,其余的默认值都是null
    String name;
    int age;
    public static void main(String[] args) {//main方法
        //局部变量:必须声明和初始化值
        int i = 10;
        System.out.println(i);

        //变量类型  变量名字 = new HelloWorld();这句话是说把自己的数据拿到了
        HelloWorld helloWorld = new HelloWorld();//先写入:new HelloWorld();按住alt+回车,显示:HelloWorld helloWorld = new HelloWorld();
        //可以拿到数据
        System.out.println(helloWorld.age);//先写入:helloWorld.age.sout,按住回车键,显示:System.out.println(helloWorld.age);输出值:0
        System.out.println(helloWorld.name);//输出值:null

    }
    //其他方法
    public void add(){
    }
}
类变量
public class HelloWorld {
    //类变量:static
    static double salary = 2500;
    public static void main(String[] args) {//main方法
     
        //类变量:static
        System.out.println(salary);//输出值:2500.0

    }
}

常量
  • 初始化后不会再改变的值,不会变动的值
  • 所谓常量可以理解成一种特殊的变量,它的值被设定以后,在程序运行中不允许被改变
final 常量名=值;
final double PI=3.14;
  • 常量名一般使用大写字符
public class HelloWorld {
    //修饰符不存在先后顺序,静态常量,final常量
    static final double PI = 2500;
    final static double P = 2500;
    public static void main(String[] args) {//main方法

        //类变量:static
        System.out.println(PI);//输出值:2500.0
        System.out.println(P);//输出值:2500.0

    }
}


变量命名规

类成员变量:首字母小写和驼峰原则:monthSalary

局部变量:首字母小写和驼峰原则;

常量:大写字母和下划线:MAX_VALUE

类名:首字母大写和驼峰原则:Man,GoodMan

方法名:首字母小写和驼峰原则:run(),runRun()

运算符

package oper;

public class HelloWorld {
    public static void main(String[] args) {
        //二元运算符
        //ctrl+D,复制当前行到下一行
        int a = 10;
        int b = 20;
        int c = 25;
        int d = 25;
        System.out.println(a+b);
        System.out.println(a-b);
        System.out.println(a*b);
        System.out.println(a/b);
        
        System.out.println(a/(double)b);//输出值为:0.5
    }
}

实例:

package oper;

public class HelloWorld {
    public static void main(String[] args) {
       long a = 1211212L;
       int b = 123;
       short c =10;
       byte d = 8;
        System.out.println(a + b + c + d);//long
        System.out.println(b + c + d);//int
        System.out.println(c + d);//int
        
    }
}
====================================================
package oper;

public class HelloWorld {
    public static void main(String[] args) {
      //关系运算符返回的结果:正确,错误   布尔值
        int a = 10;
        int b = 20;

        System.out.println(a > b);
        System.out.println(a < b);
        System.out.println(a == b);
        System.out.println(a != b);
        
        int c = 21;
        System.out.println(c % a);//取余  c / a  21/10=2...1,输出值为:1,也叫做模运算。
    }
}

自增自减运算符(++、–)
package oper;

public class HelloWorld {
    public static void main(String[] args) {
        //++  --  自增自减  一元运算符
        int a = 3;
        int b = a++;//a++ a = a + 1,执行完这行代码后,先给b赋值,再自增
        System.out.println(a);//4

        int c = ++a;//++a a = a + 1,执行完这行代码之前,先自增,再给c赋值

        System.out.println(a);//5
        System.out.println(b);//3
        System.out.println(c);//5

        //幂运算 2^3 2*2*2=8  很多运算,我们会使用一些工具类来操作
        double pow = Math.pow(2, 3);//先写入:Math.pow(2, 3);按住alt+回车键,显示:double pow = Math.pow(2, 3);
        System.out.println(pow);//输出值:8.0

    }
}
逻辑运算符
package oper;

public class HelloWorld {
    public static void main(String[] args) {
      //与(and) 或(or) 非(取反)
        boolean a =true;
        boolean b =false;
        System.out.println("a && b:"+(a&&b));//a && b:false,与,两个变量为真,结果为真
        System.out.println("a || b:"+(a||b));//a || b:true,或,两个变量有一个为真,结果为true
        System.out.println("! (a && b):"+!(a&&b));//! (a && b):true,非,如果是真则变为假,如果是假,则变为真

        //短路运算
        int c = 5;
        boolean cc = (c<4)&&(c++<4);
        System.out.println(cc);//false,c<4是错的,所以就不会执行后面的操作,造成短路,c++<4不会被使用,
        System.out.println(c);//5
    }
}
位运算符
System.out.println(2<<3);//输出值:16
条件运算符
package oper;

public class HelloWorld {
    public static void main(String[] args) {
        int a = 10;
        int b = 20;
        a+=b;//a=a+b
        a-=b;//a=a-b
        System.out.println(a);
        //字符串连接符  +  ,String
        System.out.println(""+a+b);//输出值:1020
        System.out.println(a+b+"");//输出值:30
    }
}
扩展赋值运算符
package oper;

public class HelloWorld {
    public static void main(String[] args) {
   //x ? y : z    如果x==true,则结果为y,否则结果为z
        int a = 80;
        String type = a < 60 ?"不及格":"及格";//必须掌握
        System.out.println(type);//输出值:及格
    }
}

优先级

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/490239.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号