导读:C#和Java是当今最火热的两门面向对象编程语言,很多程序都是既开发Java,也涉足C#。不得不说这两门编程语言有很多共同点,这里主要比较一下Java和C#数据类型的不同之处,这些小的区别有时甚至会让经验丰富的程序员栽跟头。

#1: 无符号整数(Unsigned Integers)

C#: 支持 8-bit, 16-bit, 32-bit, and 64-bit 无符号整数

Java: 仅支持 16-bit无符号整数

Java之父在Java的初始原型设计的时候就决定不包括无符号整数,在2001年《Java World》杂志的采访中,他还强调简单是开发一门健壮的编程语言的关键。

“我问过不少人C语言里无符号运算规则,但没有任何人理解C语言中无符号运算。一部分人理解其中明显的,但大多数并人不理解。”

#2: 复数(Complex Numbers)

C#: 支持复数

Java: 不支持复数

复数一般写作“a + bi”,其中“a”和“b”是整数,而“i”代表根号-1,在电气工程、流体力学等环境中常常会用到复数。

#3: 值类型(Value Types)

C#: 支持用户定义值类型

Java: 仅支持原始值类型

C#允许用户自定义值类型,例如:如果用户想构建有多个属性的SimpleVar变量,然后给属性赋值,代码如下:

  1. struct SimpleVar
  2. {
  3. public int Position;
  4. public bool Exists;
  5. public double LastValue;
  6. }
  7. static void Main()
  8. {
  9. SimpleVar s;
  10. s.Position = 2;
  11. s.Exists = true;
  12. s.LastValue = 4.2;
  13. }

#4: 元组(Tuples)

C#: 支持元组

Java: 不支持元组

C#里的“元组”类包含 “一个拥有特定数量和序列元素的数据结构”。例如:

  1. var zipCodes = new Tuple<string, int, int, int, int>(“Houston”, 77006, 77098, 77002, 77019);

或者

  1. var zipCodes = Tuple.Create(“Houston”, 77006, 77098, 77002, 77019);

元组类和标准数组类似,但是灵活性较差,因为元组区域不允许修改和其它操作。

#5: 指针(Pointers)

C#: 支持指针

Java: 不支持指针

指针变量“point”指向系统内存里的确切位置,在Java这样的网络应用语言中,指针毫无用处。实际上,Java Native Interface (JNI)能够实现任何这类功能。

所以,正如Gosling指出,Java的最大优势莫过于简单。但是,为此这会牺牲掉包括数据类型在内的一些复杂功能。

转载于:https://www.cnblogs.com/crhdyl/p/4981074.html

c# java数据类型不同点相关推荐

  1. java中日期的数据类型是啥_用于存储日期和时间的最合适的SQL和Java数据类型

    使用以下格式处理日期和时间的最合适的MySQL和Java数据类型是什么:yyyy.MM.dd hh:mm:ss 在持久层(jdbc类型)中使用的相应Java类型是java.sql.Timestamp. ...

  2. java数据类型转化_JAVA基本数据类型及其转换

    Java语言是一种强类型语言.这意味着每个变量都必须有一个声明好的类型.Java语言提供了八种基本类型.六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型.Java另外还提供大数字对 ...

  3. java中char占的二进制,java数据类型与二进制详细介绍

    java数据类型与二进制详细介绍 在java中 Int 类型的变量占 4个字节 Long 类型的变量占8个字节 一个程序就是一个世界,变量是这个程序的基本单位. Java基本数据类型 1. 整数类型 ...

  4. java数据类型的一些注意事项

    注意一(数据类型): java数据类型: 引用数据类型(一个):String 原生数据类型(八个): 数字:byte<short<int<long (默认是int) 小数:float ...

  5. java数据类型_Java 变量、表达式和数据类型详解

    数据类型 一.变量 变量: 表示存储空间,可用来存放某一类型(整数.小数...)的数据,没有固定值,变量值是可变的,可重复使用,也可以用来存储某种类型的未知数据. 变量的特点: ① 占据内存中的一块存 ...

  6. JAVA数据类型及字符编码

    文章目录 一.数据类型作用 二.数据类型有哪些 三.基本数据类型占字节数 四.数据类型取值范围 五.字符编码 一.数据类型作用 数据类型是用来声明变量的,程序在运行过程中根据不同的数据类型分配不同大小 ...

  7. Java数据类型以及变量的定义

    一:Java数据类型有基本数据类型,引用数据类型 二:8种基本数据类型: 1.整数类型:byte ,short,long 2.浮点数据类型:float,double 3.字符类型:char 4.布尔类 ...

  8. MySQL数据类型和Java数据类型对应关系表

    MySql 数据类型和 Java 数据类型之间的转换是很灵活的. 一般来讲,任何 MySql 数据类型都可以被转换为一个 java.lang.String,任何 MySql 数字类型都可以被转换为任何 ...

  9. Java数据类型(基本数据类型)学习

    Java数据类型(基本数据类型)学习 与其他语言一样,Java编程同样存在,比如int a,float b等.在学习变量之前我就必须先了解Java的数据类型啦. Java的数据类型包括基本数据类型和引 ...

最新文章

  1. Angular5学习笔记 - 虚拟RestfulApi配置与使用(六)
  2. WEB攻击手段及防御第1篇-XSS
  3. sap.m.library acts as one of the two most core framework library
  4. Zongsoft.Data 发布公告
  5. mysql 分类计数器_PHP MySQL映像计数器
  6. 转!最适合新手小白的8个python开发环境(内附python IDE最新下载地址+软件激活码+长期有效)
  7. 小霸王被申请破产重整;虎牙员工自曝被HR抬出公司;Office 2010被微软终止服务|极客头条
  8. 安装linux下显卡驱动
  9. android设置自动亮度,Android设置屏幕亮度
  10. Uipath Try Catch 妙用
  11. 应届毕业生2012求职之路
  12. java 计算星座算法,java 依据生日计算星座
  13. 如何在远程计算机上播放音乐,如何用iPhone远程遥控电脑播放音乐教程
  14. 70.JAVA编程思想——Web应用
  15. PointNet: Deep Learning on Point Sets for 3D Classification and Segmentation
  16. (私人收藏)植物大战僵尸游戏角色素材集成包(用于练习)
  17. 《机器学习技法》第5课笔记 核函数逻辑回归
  18. 给幼儿园小朋友看的网络安全扫盲篇
  19. oracle中 xD转义,【转】oracle X表汇总
  20. 逻辑回归Logistics--简述

热门文章

  1. 字符串去掉空格 trim()方法
  2. 生活在地球上:网络摘录
  3. dell服务器系统开机提示错误解决方法
  4. ps - 按进程消耗内存多少排序
  5. vue(2)---computed,watch--2019.5.21学习笔记
  6. 富文本编辑器Quill(二)上传图片与视频
  7. JAVA线程池ScheduledExecutorService周期性地执行任务 与单个Thread周期性执行任务的异常处理...
  8. 关于SSIS中解密数据库字符串的方法
  9. SynchronizedMap和ConcurrentHashMap的深入分析
  10. struts iterator 标签 之 indexId