JAVA数据类型(转载)
JAVA中值类型的只有short,char,byte,int,long,double,float,boolean八大基本类型,其他的所有类型都是引用类型。
首先我们都知道在编程中赋值运算“=”的意思是把右边的值赋给左边。
 
如图所示,当b=a时,实际上就是把a的值赋值给b。
但是在数组中,可不是这么回事
 
如图所示,先定义一个数组变量a,里面存着1,2,3. 
再定义一个数组变量b,将b=a,然后遍历循环将b中每一个元素,使每个数加一。这时b中的元素应该是{2,3,4}。最后再输出数组a。 至此,按照我们上面的规则来说,把a的值赋值给b,改变b的值对于a来说应该没有任何影响,a的值应该还是{1,2,3}才对。 
我们运行一下  
a的值改变了! 
- 在java中,数据类型分为两类,即基本数据类型和引用数据类型 
基本数据类型如 int,long,byte,操作时本身就是数据; 
引用数据类型如数组,类,接口。引用数据类型传递的是内存的使用权,是一块内存空间,它可以由多个单位同时使用。 
而赋值的过程并不是把a数组内的数据传递给b,而是把a数组的内存使用权与b共享。所以当a和b共享同一个数组内存时,不管改变数组a内的值还是改变数组b内的值,该数组都会改变。
在调用方法时,同理。
- 一般来说调用方法并不会改变实参的值
 
虽然方法中使用的实参的是i,但是最后结果i的值没有改变,还是5。
如果实参是数组呢?看一下
 
数组b和数组c的值同时改变了,这就是引用数据类型。传递的永远是内存的使用权,一块内存空间,而不是本身的数据。
转自:http://blog.csdn.net/sunopar/article/details/50582759
JAVA数据类型(转载)的更多相关文章
- 回顾java基础—Java数据类型
		1 java数据类型.8种基本类型,3种引用类型 基本类型(也称:原始类型):byte.short.int.long.char.float.double.boolean 引用类型:类,接口,数组 2 ... 
- java.sql.Types,数据库字段类型,java数据类型的对应关系
		以下转自:http://kummy.itpub.net/post/17165/172850 本文在原文基础上有增减. 本概述是从<JDBCTM Database Access from Java ... 
- Java基础-Java数据类型
		Java基础-Java数据类型 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.数据类型的作用 数据类型就是一组值,以及这一组值上的操作,数据类型可以决定数据的存储方式,取值范围 ... 
- JAVA数据类型,变量,转换,常量,运算符
		java数据类型: Java基本类型共有八种,基本类型可以分为三类: 1.字符类型char,用单引号赋值 2.布尔类型boolean 3.数值类型byte.short.int.long.float.d ... 
- 如何用javac 和java 编译运行整个Java工程 (转载)【转】在Linux下编译与执行Java程序
		如何用javac 和java 编译运行整个Java工程 (转载) http://blog.csdn.net/huagong_adu/article/details/6929817 [转]在Linux ... 
- 多态、GC、Java数据类型
		多态 一.java中实现多态的机制是什么? 靠的是: 父类定义的引用变量可以指向子类的实例对象,或者接口定义的引用变量可以指向具体实现类的实例对象 而程序调用的方法,在运行期才动态绑定, 它就是引用变 ... 
- java数据类型定义与输出
		JAVA数据类型分基本数据类型和引用数据类型. 一.基本数据类型 Java里面包含8个基本数据类型,分别是: boolean.byte.char.short.int.float.douboe.long ... 
- java数据类型图:
		java数据类型图: ┏数值型━┳━整数型:byte short int long ┏基本数据类型━━┫ ... 
- java数据类型学习
		java数据类型基本分为两类: 一类为基本数据类型: 数值类型: 整数类型:byte.short.int.long 浮点类型:float.double 字符类型:char 布尔类型:boolean 一 ... 
- JAVA —— 数据类型
		引言:java 数据类型可分为两大类:基本数据类型和引用类型,其中基本数据类型又包括整形.浮点型.字符型和布尔型,而引用型变量与基本类型变量不同,它的值是指向内存空间的引用(地址),引用在其他语言中称 ... 
随机推荐
- 核心重点lxml
			from lxml import html htmlStr = html.etree.HTML(pagehtml, parser= html.etree.HTMLParser(encoding='ut ... 
- Spring中IOC与DI的的区别
			依赖注入的前提: 有IOC的环境,也就是将必须对象的创建权交给了Spring. DI 介绍 Dependency Injection 依赖注入.需要有IOC 的环境,Spring 创建这个类的过程中, ... 
- bzoj 3795: 魏总刷DP
			Description 魏总,也就是DP魏又开始刷DP了.一共有n道题,第i道题魏总原本需要u[i]秒的时间.不过,为了表达对这些水题的藐视,魏总决定先睡k秒再开始刷题.魏总并不清楚自己会睡多久,只知 ... 
- 小峰mybatis(5)mybatis使用注解配置sql映射器--动态sql
			一.使用注解配置映射器 动态sql: 用的并不是很多,了解下: Student.java 实体bean: package com.cy.model; public class Student{ pri ... 
- ASP.NET Web Pages:文件
			ylbtech-.Net-ASP.NET Web Pages:文件 1.返回顶部 1. ASP.NET Web Pages - 文件 本章介绍有关使用文本文件的知识. 使用文本文件 在前面的章节中,我 ... 
- Linux之 AWK SED
			AWK系列#awk 中 NF表示取最后一列 NR表示取第几行 NR==3 表示取第三行[root@nodchen-db01-test ~]# free -m | awk 'NR==3 {print $ ... 
- Unreal Engine 4(虚幻UE4)GameplayAbilities 插件入门教程(二)
			我们接着学习.如果没有学习第一篇,请前往学习. 由于GameplayAbilities插件基本上没有资料(除了前面提供的那篇Dave的博文以外,再无资料,有迹象表明Dave是这个插件的开发者). 这个 ... 
- redis 导出
			1 安装redis: apt update apt-get install redis-server 2: cd /etc/redis 3: 用redis-cli导出key redis-cli -h ... 
- 第10课 struct 和 union 分析
			1. struct的小秘密 (1)C语言中的struct可以看作变量的集合 (2)struct的问题——空结构体占用多的内存? [实例分析]空结构体的大小 #include <stdio.h&g ... 
- SVM的sklearn.svm.SVC实现与类参数
			SVC继承了父类BaseSVC SVC类主要方法: ★__init__() 主要参数: C: float参数 默认值为1.0 错误项的惩罚系数.C越大,即对分错样本的惩罚程度越大,因此在训练样本中准确 ... 
