.Net转Java.02.数据类型
.NET中常见的数据类型分类分别是值类型和引用类型
值类型包括(基元类型、struct、枚举)
引用类型包括(类、类、数组、接口、指针)
Java分为,基本类型和类
C# | Java | |||
值类型 | 基元类型 | 基元数据类型 | ||
struct | 无此概念 | |||
枚举 | 是引用类型 | |||
引用类型 | 类 | 类 | ||
数组 | 数组 | |||
接口 | 接口 | |||
指针 | 无此概念 | 在C#中需要打开unsafe才可使用 |
有点联系,但是区别还是很大的,对于Java基本类型只有8种,4种整型(int short long byte),2种浮点(float,double),1种字符(char),一种布尔(boolean)
如果非要跟.NET对应,就看下面这张表吧
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到127
.NET的byte是0到255
看下面两个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[]数组却不同
分类:
.Net转Java
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
2011-12-26 Apple Mac OS X每日一技巧029:查询iPhone/iPad的序列号(Serial Number)和标识符(UDID/Identifier)