.Net轉Java.02.數據類型

.NET中常見的數據類型分類分別是值類型和引用類型java

值類型包括(基元類型、struct、枚舉)數組

引用類型包括(類、類、數組、接口、指針)app

Java分爲,基本類型和類ui

  C#   Java  
值類型 基元類型   基元數據類型  
  struct   無此概念  
  枚舉   是引用類型  
引用類型    
  數組   數組  
  接口   接口  
  指針   無此概念 在C#中須要打開unsafe纔可以使用

 

 

 

 

 

 

 

有點聯繫,可是區別仍是很大的,對於Java基本類型只有8種,4種整型(int short long byte),2種浮點(float,double),1種字符(char),一種布爾(boolean)編碼

若是非要跟.NET對應,就看下面這張表吧spa

  Java 基本類型 C#基元數據類型 取值範圍
整型 int int  
short short  
long long  
- byte  不一樣!!!
byte  sbyte  不一樣!!!
uint  
ushort  
ulong  
 浮點 float  float   
double  double   
 字符 char  char   
 布爾 boolean  bool   

 

 

 

 

 

 

 

 

 

 

 

 

除去Java缺乏的一部分類型(老實說,這些數據這麼多年來在.NET裏邊也沒有用到過),要注意的就是java的byte跟C#的byte取值範圍不一樣指針

java的byte是從-128到127code

.NET的byte是0到255blog

 看下面兩個String轉byte的例子接口

            // C# 代碼
            byte[] bytes = System.Text.Encoding.UTF8.GetBytes("小墨123");
            Console.WriteLine(String.Join(",", bytes)); // 輸出 229,176,143,229,162,168,49,50,51
            Console.ReadLine();
        // Java代碼
        byte[] bytes = "小墨123".getBytes("UTF8");
        StringBuilder b = new StringBuilder();
        for (byte item : bytes) {
            b.append(item).append(",");
        }
        System.out.println(b.toString()); // 輸出爲 -27,-80,-113,-27,-94,-88,49,50,51,

一樣的字符串,一樣UFT8編碼,可是轉化的byte[]數組卻不一樣

相關文章
相關標籤/搜索