首页 > 其他分享 >数据类型

数据类型

时间:2023-01-01 12:00:12浏览次数:34  
标签:String int 数据类型 System println c1 out

数据类型

强类型语言:Java、C++

变量的使用要严格符合规定,所有变量都必须先定义后才能使用

弱类型语言:

VB、JavaScript('12'+3=123、'12'+3="123")

image-20221222201617184

long:数字后必须加“L”,不加默认为int。

long l = 123L;

float:数字后必须加“F”,不加默认为double。

float f = 123.1f;

char name = "秦";

电脑32位(支持最大4G内存)和64位(支持最大128G内存)

整型

int i1 = 10;
int i2 = 0b10; //二进制以“0b”开头
int i2 = 010;  //八进制以数字“0”开头
int i3 = 0x10;  //十六进制以“0x”开头

System.out.println(i1);
System.out.println(i2);
System.out.println(i3);
System.out.println(i4);

浮点型

银行业务怎么表示?BigDecimal 数学工具类

float:有限、离散、舍入误差、大约、接近但不等于

double:

最好不要使用浮点数进行比较

float f = 0.1f; //0.1
double d = 1.0/10; //0.1
System.out.println(f==d); //false
float d1 = 232323232313132232233f;
float d2 = d1 + 1;
System.out.println(d1==d2); //true

字符型

所有的字符本质还是数字

编码 Unicode 表(97 = a 65 = A)2字节 0 - 65536 早期,Excel表最长2^16 = 65536行

U0000 UFFFF

转义字符:\t:制表符;\n:换行符

char c1 = 'a';
char c2 = '中';
System.out.println(c1);
System.out.println((int)c1); //强制转换
System.out.println(c2);
System.out.println((int)c2); //强制转换
char c3 = '\u0061';
System.out.println(c3); //a

字符串

对象 从内存分析

String sa = new String("hello world");
String sb = new String("hello world");
String sc = "hello world";
String sd = "hello world";
System.out.println(sa==sb); //false
System.out.println(sc==sd); //true

布尔

Less is More!

boolean flag = true;
if(flag == true){}
if(flag){}

类型转换

由于Java是强类型语言,所以运算中,不同类型的数据需要进行类型转换,先转化为同一类型,然后进行运算;

  • 强制类型转换(高-->低):(类型)变量名,包括类与类之间的转换,也是这种形式;

  • 自动类型转换(低-->高);

  • 不能对布尔值进行转换;

  • 不能把对象类型转换为不相干的类型;

  • 高容量转换为低容量,强制转换;

  • 转换的时候可能出现内存溢出,或精度问题;

  • 操作比较大的数的时候,注意溢出问题;

  • JDK7 新特性,数字之间可以用下划线分割

image-20221223204043991

int i = 128;
byte b = (byte) i;  //内存溢出(Byte:-128 ~ 127)
double d = i;
char c = 'a';
int c1 = c + 1;
int money = 10_0000_0000;
int years = 20;
int total1 = money * years; //-1474836480 计算的时候内存溢出了
long total2 = money * years; //-1474836480 计算的时候内存溢出了 默认是int,转换之前已经存在问题了
long total3 = money * ((long)years); //200 00000 0000 先把一个数转换为long
System.out.println(i);  //128
System.out.println(b);  //-128
System.out.println(d);  //128.0
System.out.println((int)23.7);  //23 精度问题
System.out.println((int)-45.89f);  //-45 精度问题
System.out.println(c1);  //98
System.out.println((char)c1);  //b
System.out.println(total1);  //-1474836480
System.out.println(total2);  //-1474836480
System.out.println(total3);  //200 00000 0000
 

标签:String,int,数据类型,System,println,c1,out
From: https://www.cnblogs.com/sunfy/p/17017920.html

相关文章

  • Java数据类型及数据类型转换
    数据类型1、基本类型(PrimitiveType)(1)数值类型:整数类型:byte:占1个字节范围:-128-127short:占2个字节范围:-32768-32767int:占4个字节范围:-2147483648-2147483647long:占......
  • Mysq - 基本数据类型,约束,表的修改,删除表,清空表
    1.基本数据类型整数类型:bit,bool,tinyint,smallint,mediumint,int,bigint浮点数类型:float,double,decimal字符串类型:char,varchar,tinytext、text,mediumtext,longtext,tinyblob,blob,m......
  • 01Python的标准数据类型
    #Number数字'''intlong(python2.0)floatcomplex'''#String字符串s='abcde'print(s[1:5])#List列表sList=['a','1',1,'bd','这']sList2=['A','c']sLis......
  • 数据类型转换
    类型转换字符->低字节整数->高字节整数->浮点数inti=128;doubleb=i;逆向则需要强制转换可能导致内存溢出或精度丢失doubeb=10.8;inti=(int)b;//10......
  • 数据类型拓展
    数据类型拓展//整数拓展-进制二进制0b..八进制0..十六进制0x..inta1=10;inta2=0b10;inta3=010;inta4=0x1......
  • 数据类型拓展
    整数进制二进制0b十进制八进制0十六进制0x浮点数银行业务使用BigDecimal类来表示金额字符所有的字符本质还是数字转义字符\n......引用......
  • Oracle数据类型
    一、Oracle的,默认字符集:ZHS16GBK(简体中文,16位,GBK),在此字符集中,一个字母或数字占一字节,一个汉字占两字节;select*fromnls_database_parameterswhereparameter='NLS_CHARA......
  • 数组数据类型
     代码示例:<!DOCTYPEhtml><html><head><metacharset="utf-8"><title></title></head><body><script>var......
  • SQLite 数据类型
    SQLite 数据类型SQLite数据类型是一个用来指定任何对象的数据类型的属性。SQLite中的每一列,每个变量和表达式都有相关的数据类型。您可以在创建表的同时使用这些数据类型......
  • VBA 42 数据类型与转换
    注意:使用VBA.TypeName()判断单元格内容的数据类型时,单元格一定要使用value属性。(切记切记,否则返回的类型是Range)判断是否为空VBA.IsEmpty()VBA.TypeName() 判断是......