欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

全面剖析java 數(shù)據(jù)類型與運(yùn)算符

 更新時(shí)間:2021年09月29日 11:24:00   作者:文墨軒  
這篇文章主要介紹了Java基本數(shù)據(jù)類型和運(yùn)算符,結(jié)合實(shí)例形式詳細(xì)分析了java基本數(shù)據(jù)類型、數(shù)據(jù)類型轉(zhuǎn)換、算術(shù)運(yùn)算符、邏輯運(yùn)算符等相關(guān)原理與操作技巧,需要的朋友可以參考下

java的數(shù)據(jù)類型與運(yùn)算符

java的變量和類型

變量指的是程序運(yùn)行是可變的量,其需要開辟內(nèi)存空間用于儲存一些數(shù)據(jù)
而類型是對變量的種類進(jìn)行劃分,不同的類型有不同的屬性

在這里插入圖片描述

基本數(shù)據(jù)類型——數(shù)值型

整型

byte

byte 變量名=初始值
byte類型表示一個(gè)整形不過只占1個(gè)字節(jié);
其數(shù)據(jù)范圍為[-128,127]

public static void main(String[] args) {
        System.out.println(Byte.MAX_VALUE);
        System.out.println(Byte.MIN_VALUE);
    }

在這里插入圖片描述

short

***short 變量名 = 初始值 ***
short表示變量的類型是一個(gè)整型
short的取值范圍[-32768,32767]

public static void main(String[] args) {
        System.out.println(Short.MIN_VALUE);
        System.out.println(Short.MAX_VALUE);
    }

在這里插入圖片描述

int

語法:
***int 變量名 = 初始值 ***

int 表示變量的類型是一個(gè)整型
Java中,int類型占4個(gè)字節(jié)(每個(gè)字節(jié)占8個(gè)比特位)
其數(shù)據(jù)范圍是 -2^31 -> 2^31-1 , 也就大概是 -21億 到 +21億

public static void main(String[] args) {
        System.out.println(Integer.MAX_VALUE);
        System.out.println(Integer.MIN_VALUE);
    }

在這里插入圖片描述

如果運(yùn)算結(jié)果超過其數(shù)據(jù)范圍,就會出現(xiàn)溢出情況

public static void main(String[] args) {
        System.out.println(Integer.MAX_VALUE+1);
        System.out.println(Integer.MIN_VALUE-1);
    }

在這里插入圖片描述

21億這樣的數(shù)字對于當(dāng)前的大數(shù)據(jù)時(shí)代來說, 是很容易超出的. 針對這種情況, 我們就需要使用更大范圍的數(shù)據(jù)類型來表示,因此 Java 中提供了 long 類型.

long

語法:
***long 變量名 = 初始值 ***
long 占8個(gè)字節(jié)其數(shù)據(jù)范圍 [-2^63 ,2^63-1]

public static void main(String[] args) {
        long a=10l;
        System.out.println(a);
    }
public static void main(String[] args) {
        System.out.println(Long.MAX_VALUE);
        System.out.println(Long.MIN_VALUE);
    }

在這里插入圖片描述

注意:

基本語法格式和創(chuàng)建 int 變量基本一致, 只是把類型修改成 long初始化設(shè)定的值為 10L , 表示一個(gè)長整型的數(shù)字. 10l 也可以.使用 10 初始化也可以, 10 的類型是 int, 10L 的類型是 long, 使用 10 L 或者 10 l 更好一些.

浮點(diǎn)型

double

語法:
double 變量名 = 初始值

public static void main(String[] args) {
        double num = 1.0;
        System.out.println(num);
    }

注意:
在 Java 中, int 除以 int 的值仍然是 int(會直接舍棄小數(shù)部分).

public static void main(String[] args) {
        int a = 1;
		int b = 2;
		System.out.println(a / b);
    }

在這里插入圖片描述

Java 中的 double 雖然也是 8 個(gè)字節(jié), 但是浮點(diǎn)數(shù)的內(nèi)存布局和整數(shù)差別很大, 不能單純的用 2 ^ n 的形式表示數(shù)據(jù)范
圍.
Java 的 double 類型的內(nèi)存布局遵守 IEEE 754 標(biāo)準(zhǔn)(和C語言一樣), 嘗試使用有限的內(nèi)存空間表示可能無限的小數(shù), 勢
必會存在一定的精度誤差.

public static void main(String[] args) {
        double num = 1.1;
        System.out.println(num * num);
    }

在這里插入圖片描述

float

語法:
float 變量名 = 初始值

public static void main(String[] args) {
        float num = 1.0F;
        System.out.println(num);
    }

float 類型在 Java 中占四個(gè)字節(jié), 同樣遵守 IEEE 754 標(biāo)準(zhǔn). 由于表示的數(shù)據(jù)精度范圍較小, 一般在工程上用到浮點(diǎn)數(shù)都
優(yōu)先考慮 double, 不太推薦使用 float.

字符型

char

char 變量名 = 初始值

public static void main(String[] args){
	 	char ch='呵';
        System.out.println(ch);
}

注意:

Java 中使用 單引號 + 單個(gè)字母 的形式表示字符字面值.計(jì)算機(jī)中的字符本質(zhì)上是一個(gè)整數(shù). 在 C 語言中使用 ASCII 表示字符, 而 Java 中使用 Unicode 表示字符. 因此一個(gè)字符占用兩個(gè)字節(jié), 表示的字符種類更多, 包括中文.

布爾型

boolean

boolean 變量名 = 初始值

public static void main(String[] args) {
        boolean bool=false;
        System.out.println(bool);
    }

注意:

  • boolean 類型的變量只有兩種取值, true 表示真, false 表示假.
  • Java 的 boolean 類型和 int 不能相互轉(zhuǎn)換, 不存在 1 表示 true, 0 表示 false 這樣的用法.
  • boolean 類型有些 JVM 的實(shí)現(xiàn)是占 1 個(gè)字節(jié), 有些是占 1 個(gè)比特位, 這個(gè)沒有明確規(guī)定.

運(yùn)算符

運(yùn)算符:|

*** 如果兩個(gè)二進(jìn)制位都是 0, 則結(jié)果為 0, 否則結(jié)果為 1***

public static void main(String[] args) {
        int a=1;
        int b=2;
        System.out.println(a|b);
    }

在這里插入圖片描述

運(yùn)算符:&

如果兩個(gè)二進(jìn)制位都是 1, 則結(jié)果為 1, 否則結(jié)果為 0.

public static void main(String[] args) {
        int a=1;
        int b=2;
        System.out.println(a&b);
    }

在這里插入圖片描述

運(yùn)算符:^

*** 如果兩個(gè)數(shù)字的二進(jìn)制位相同, 則結(jié)果為 0, 相異則結(jié)果為 1.***

public static void main(String[] args) {
        int a=1;
        int b=2;
        System.out.println(a^b);
    }

在這里插入圖片描述

運(yùn)算符:~

如果該位為 0 則轉(zhuǎn)為 1, 如果該位為 1 則轉(zhuǎn)為 0

public static void main(String[] args) {
        int a=1;
        int b=~a;
        System.out.println(b);
    }

在這里插入圖片描述

運(yùn)算符:>>

最右側(cè)位不要, 最左側(cè)補(bǔ)符號位(正數(shù)補(bǔ)0, 負(fù)數(shù)補(bǔ)1)

 public static void main(String[] args) {
        int a=8;
        System.out.println(a>>1);//向右位移1個(gè)
    }

在這里插入圖片描述

運(yùn)算符:<<

最左側(cè)位不要了, 最右側(cè)補(bǔ) 0

public static void main(String[] args) {
        int a=8;
        System.out.println(a<<1);
    }

在這里插入圖片描述

運(yùn)算符:>>>

最右側(cè)位不要了, 最左側(cè)補(bǔ) 0(無論他是否為負(fù)數(shù))

public static void main(String[] args) {
        int a=8;
        System.out.println(a>>>1);
        int b=-1;
        System.out.println(b >>> 1);
    }

在這里插入圖片描述

到此這篇關(guān)于全面剖析java 數(shù)據(jù)類型與運(yùn)算符的文章就介紹到這了,更多相關(guān)java 數(shù)據(jù)類型與運(yùn)算符內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 【MyBatis源碼全面解析】MyBatis一二級緩存介紹

    【MyBatis源碼全面解析】MyBatis一二級緩存介紹

    下面小編就為大家?guī)硪黄綧yBatis源碼全面解析】MyBatis一二級緩存介紹。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-06-06
  • SpringBoot中shiro過濾器的重寫與配置詳解

    SpringBoot中shiro過濾器的重寫與配置詳解

    在前后端分離跨域訪問的項(xiàng)目中shiro進(jìn)行權(quán)限攔截失效 (即使有正確權(quán)限的訪問也會被攔截) 時(shí)造成302重定向錯(cuò)誤等問題,為解決這個(gè)問題,就需要進(jìn)行shiro過濾器的重寫以及配置。本文詳細(xì)介紹了解決方法,需要的可以參考一下
    2022-04-04
  • springboot @ComponentScan注解原理解析

    springboot @ComponentScan注解原理解析

    這篇文章主要介紹了springboot @ComponentScan注解原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • Spring的自定義擴(kuò)展標(biāo)簽NamespaceHandler解析

    Spring的自定義擴(kuò)展標(biāo)簽NamespaceHandler解析

    這篇文章主要介紹了Spring的自定義擴(kuò)展標(biāo)簽NamespaceHandler解析,在很多情況下,我們需要為系統(tǒng)提供可配置化支持,簡單的做法可以直接基于Spring的標(biāo)準(zhǔn)Bean來配置,Spring提供了可擴(kuò)展Schema的支持,這是一個(gè)不錯(cuò)的折中方案,需要的朋友可以參考下
    2023-12-12
  • 利用maven命令指定配置文件打包springboot項(xiàng)目

    利用maven命令指定配置文件打包springboot項(xiàng)目

    這篇文章主要介紹了利用maven命令指定配置文件打包springboot項(xiàng)目,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • Java利用IO流實(shí)現(xiàn)簡易的記事本功能

    Java利用IO流實(shí)現(xiàn)簡易的記事本功能

    本文將利用Java中IO流編寫一個(gè)模擬日記本的程序,通過在控制臺輸入指令,實(shí)現(xiàn)在本地新建文件,打開日記本和修改日記本等功能,感興趣的可以了解一下
    2022-05-05
  • SpringBoot整合達(dá)夢數(shù)據(jù)庫的教程詳解

    SpringBoot整合達(dá)夢數(shù)據(jù)庫的教程詳解

    這篇文章主要給大家介紹了SpringBoot整合達(dá)夢數(shù)據(jù)庫的詳細(xì)教程,文章中有詳細(xì)的圖片介紹和代碼示例供大家參考,具有一定的參考價(jià)值,需要的朋友可以參考下
    2023-08-08
  • 解決Mac?m1?電腦?idea?卡頓的問題

    解決Mac?m1?電腦?idea?卡頓的問題

    這篇文章主要介紹了Mac?m1?電腦?idea?卡頓的問題解決,文中給大家補(bǔ)充介紹了IDEA卡頓問題處理方法,需要的朋友可以參考下
    2023-03-03
  • Spring?Cloud?Gateway集成Sentinel流控詳情

    Spring?Cloud?Gateway集成Sentinel流控詳情

    這篇文章主要介紹了Spring?Cloud?Gateway集成Sentinel流控詳情,Sentinel支持對Spring?Cloud?Gateway、Zuul等主流的API?Gateway進(jìn)行限流,需要的朋友可以參考一下
    2022-09-09
  • Java深入了解數(shù)據(jù)結(jié)構(gòu)之哈希表篇

    Java深入了解數(shù)據(jù)結(jié)構(gòu)之哈希表篇

    哈希表是一種根據(jù)關(guān)鍵碼去尋找值的數(shù)據(jù)映射結(jié)構(gòu),該結(jié)構(gòu)通過把關(guān)鍵碼映射的位置去尋找存放值的地方,說起來可能感覺有點(diǎn)復(fù)雜,我想我舉個(gè)例子你就會明白了,最典型的的例子就是字典
    2022-01-01

最新評論