`
ye_haiqiang
  • 浏览: 88385 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

数据类型及类型转换

    博客分类:
  • J2SE
阅读更多

一、整数数据

1.1 int和Integer有什么区别

int 是基础数据类型,字节长度为4,它的创建不会再堆内存中开辟空间,一般保存在栈内存里,可以用算术运算符进行加减乘除等操作。在参数传递的时候,直接传递它的值。

Integer 是int的包装类,而本质是一个类,它的创建会在堆内存中开辟一块新的空间。它的含义也是表示一个整数数字,但是算术运算符不能操作它。在参数传递的时候,传递的是它代表的对象的一个引用。

public class IntTest 
{
	public static void main(String[] args) 
	{
		int a=10;//定义int a
		Integer b=new Integer(20);//用new创建一个Integer对象
		Integer c=Integer.valueOf(30);//用valueOf()方法创建一个Integer对象
		System.out.println(++a);//a用于"++"运算
		System.out.println(b.intValue());//用intValue()方法得到int型数据
	}
}

 

 

1.2 int和long的取值范围

int 数据采用4个字节进行存储,一共32位,第一位用于表示正负号,因此,它的取值范围是-2^31~2^31-1.

long数据采用的是8个字节进行存储,一共是64位。第一位表示正负符号,因此它的取值范围是-2^63~2^63-1.

 

二、实型数据

2.1float 和double的取值范围

float:范围从3.4E10^-38~3.4E10^38

double:范围从1.7E10^-308~1.7E10^308

2.2实型与整型的相互转换

整型和实型可以进行相互转换,其中整型转为实型时,不存在精度的损失,而实型转为整型时则可能会有精度损失。转换过程可分为显式和隐式两种方式,前者是通过强制类型转换来进行,后者是在运算、传参数等情况下,由系统自动进行。

 

 

//显式转换
int i=123;
double d=(double)i;
int k=(int)d;

//丢失精度
double d2=123.456;
int k1=(int)d2;

//隐式转换
double d3=12.1;
System.out.println(d3+123); 

 

三、布尔型数据

3.1 布尔型的值:false 和true(不是 0,1)

 

3.2 boolean 和Boolean包装类的区别

1)boolean是基础数据类型,Boolean是类

2)boolean 一般存于栈空间中,Boolean对象存在堆空间中

3)boolean 是true 和false两种值,Boolean 除了true 和false ,还有null。

 

四、字符型数据

4.1 char的取值范围

java中的char采用的是Unicode 编码格式,用两个字节来表示一个字符,一共16位,它所能表示的最大字符数量为2^16

4.2char 是否能存汉字

char 可以存储汉字的,每个中文字符都有对应的Unicode编码

 

public class ChineseTest 
{
	public static void main(String[] args) 
	{
		char c='海';
		int i=c;
		System.out.println(i);
	}
}

//输出结果为:28023

 

4.3 转义字符

在java中,使用反斜杠"\"来代表转义,它与紧跟在它后面的字符一起组成了转义字符,从而达到了转义的目的,如:\"(输出双引号)

 

五、String型数据

 

字符串类具有一定的特殊性,JVM在执行双引号操作符的时候,会自动的创建一个String对象,并返回这个对象的引用

5.1字符串对象池的作用

对象池的存在是为了避免频繁的创建和销毁对象而影响系统性能。当JVM在运行用双引号引起来一个字符串的代码时,会到String的对象池中去检查是否有一个字符序列相同的对象,如果有,就取现成的对象,如果没有,则在对象池中创建一个对象,并返回。(equal与==差别的例子)

//创建String对象的两种方法
String str1="ye_haiqiang";//在对象池中取对象
String str2=new String ();//直接生成新的对象

5.2指定字符集创建String对象

使用带有字符集编码的String的构造方法就可以用指定的字符集来重新创建字符对象了,该方法 的参数包括两个:一个是byte数组;另外一个则是字符集编码的字符串形式。例如:UTF-8、GBK、ISO-8859-1等

如:

 

String a="中文";
String b=new String(a.getBytes(),"GBK");
String c=new String(a.getBytes(),"UTF-8");

 

每天一点点希望对大家有利~

分享到:
评论

相关推荐

    Python 数据类型及类型转换.md

    Python 数据类型及类型转换.md

    C++类各种类型转换_数据类型的相互转换_

    在C++编程中,数据类型的相互转换是一种常见的操作,它涉及到不同数据类型的变量之间值的迁移。本篇文章将深入探讨C++中不同类型的转换方法,包括隐式转换和显式转换,以及它们在实际编程中的应用。 首先,我们讨论...

    西门子数据类型转换_tool_数据类型转换_S7_源码

    西门子数据类型转换在工业自动化领域中是一个关键的议题,特别是在使用西门子S7系列PLC(可编程逻辑控制器)时。S7系列PLC支持多种数据类型,包括INT、DINT、REAL、STRING等,这些数据类型在不同场景下各有其应用。...

    java数据类型的转换简单数据类型之间的转换 (2). 字符串与其它数据类型的转换 (3). 其它实用数据类型转换

    一些初学JAVA的朋友可能会遇到JAVA的数据类型之间转换的苦恼,例如,整数和float,double型之间的转换,整数和String类型之间的转换,以及处理、显示时间方面的问下面笔者就开发中的一些体会介绍给大家。 我们知道,...

    mysql数据类型转换

    ### MySQL 数据类型转换详解 #### 一、引言 在MySQL数据库中,数据类型转换是一项非常重要的技能。它可以帮助我们灵活地处理不同类型的数据,尤其是在进行数据检索或处理时,经常需要将一种数据类型转换为另一种...

    从数据类型 nvarchar 转换为 numeric 时出错.pdf

    知识点一:数据类型转换问题 在数据库操作中,数据类型转换是一个常见的问题。在本案例中,从数据类型nvarchar转换为numeric时出现错误。这是因为在进行数据类型转换时,数据的内容需要符合目标数据类型的要求。例如...

    C++到C#数据类型转换

    C++ 到 C# 数据类型转换 在软件开发中,数据类型转换是一个非常重要的步骤,特别是在使用不同的编程语言时。C++ 和 C# 是两种非常流行的编程语言,它们之间的数据类型转换是非常必要的。本文将详细介绍 C++ 到 C# ...

    SQL数据类型和转换

    转换则是将一种数据类型转换成另一种的过程,这在处理不同系统或接口间的数据交互时非常常见。JDBC(Java Database Connectivity)是Java中与数据库交互的API,它规定了一套标准的数据类型和转换规则。 在JDBC中,...

    MFC各种数据类型转换

    MFC各种数据类型转换 MFC各种数据类型转换是C++编程中非常重要的一部分,包括了CString、int、string、char*之间的互转换。下面将详细介绍这些数据类型之间的转换方法。 CString与string之间的转换 CString和...

    数据类型转换工具

    数据类型转换在编程中是一项基础且重要的任务,它涉及到不同数据表示形式间的转换,以便适应不同的计算需求或存储条件。本工具专注于浮点型数据的转换,尤其关注单精度(float)和双精度(double)浮点数在不同格式...

    自己写的转换器,包含各种基本的数据类型。

    在IT行业中,数据类型的转换是一项基础且至关重要的任务。在编程时,我们常常需要将一个数据类型转换为另一个数据类型,以满足特定的程序需求。Struts1框架,作为一个经典的MVC(Model-View-Controller)框架,在...

    数据库技术sql数据类型转换

    ### 数据库技术:SQL数据类型转换 在数据库管理和查询操作中,经常需要对不同数据类型进行转换以满足特定的需求或实现特定的功能。SQL Server 提供了两种常用的数据类型转换方式:`CAST()` 和 `CONVERT()` 函数。这...

    JavaScript js数据类型及类型转换 示例代码

    本资源主要包含JavaScript数据类型转换相关的示例代码 其中包含了将值转为数字类型、将值转为字符串类型、将值转为布尔类型三种情景的示例 以及特殊情况下转换的注意事项 JavaScript 是一种广泛使用的脚本语言,...

    VC常用数据类型转换.doc

    在VC++编程中,数据类型转换是至关重要的,特别是在处理字符串和不同数据格式之间交互时。以下是一些关于VC常用数据类型转换的详细说明: 1. **BSTR、LPSTR 和 LPWSTR** - **BSTR**(Basic String)是OLECHAR*类型...

    数据类型转换

    ### 数据类型转换详解 在计算机科学领域,尤其是在嵌入式系统开发中,数据类型转换是一项基本而重要的技术。本文将围绕“数据类型转换”这一主题展开深入探讨,并结合STM32平台的应用背景进行分析。 #### 标题:...

    jni数据类型转换

    jni数据类型转换例程 1. java向native传递常用基本数据类型 和字符串类型 2. java向native传递数组类型 3. java向native传递自定义java对象 4. java向native传递任意java对象(以向native传递ArrayList为例) 5....

    常见java中数据类型之间的转换.txt

    ### 常见Java中数据类型之间的转换 在Java编程语言中,数据类型的转换是非常常见的操作之一。通过数据类型转换,可以确保不同数据类型之间的兼容性,并满足特定场景下的需求。本文将详细介绍Java中常见的数据类型...

    vhdl数据类型转换函数

    VHDL 数据类型转换函数 VHDL 中的数据类型转换函数是指在 VHDL 程序中将不同类型的数据相互转换的函数。这些函数的作用是实现不同类型的数据之间的转换,以便正确地进行赋值操作。 在 VHDL 中,数据类型转换函数...

    VC常用数据类型使用转换详解

    在IT领域,特别是针对软件开发中的编程语言,如VC(Visual C++),数据类型的使用与转换是基础且关键的一部分。本文将深入解析VC中常用数据类型及其转换方式,旨在为开发者提供一个清晰、全面的理解框架。 ### 基础...

Global site tag (gtag.js) - Google Analytics