栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java数据转换

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java数据转换

梦开始的地方
public class Hello{
public static void main(String[] args) {
 System.out.println("hello,world~");
}
}

一个源文件中最多只能有一个public类,其他类的个数不限,也可以将main方法写在非public类中,然后指定运行非public类,这样入口方法就是非public的main方法。 使用tab操作,实现缩进默认整体向右边移动,用shift+tab整体向左移 jdk=jre+Java开发工具 jre=jvm+核心类库


Java转义字符
    t:一个制表位,实现对齐的功能 n: 换行符 : 一个 ": 一个” ’: 一个‘ r: 一个回车 System.out.println(“你好r哈哈~”);
变量
    变量是程序的基本组成单位 基本要素:类型+名称=值 变量相当于内存中一个数据存储空间的表示,你可以把变量看作是一个房间的门牌号,通过门牌号我们可以找到房间,而通过变量名可以访问到变量(值) 变量在同一类型范围内不能重名,可以在同一类型范围内不断变化
类型占用内存空间范围
byte [字节]1字节-128~127
short [短整型]2字节-(2 ^15 ) ~ 2 ^15-1 -32768~32767
int [整形]4字节-(2 ^31)~2 ^31-1 -2147483648~2147483647
long[长整型]8字节-2^ 63~2 ^63-1
单精度float4字节-3.403E38~3.403E38
双精度double(常用)8字节-1.798E308~1.798E308
布尔类型boolean1字节true flase 无null
short int-32786~32767
Java数据类型
    基本数据类型

  1. #### 数值型

    整数型类:存放整数(byte[1],short[2],int[4],long[8]) 浮点(小数)类型:(float[4],double[8])
  2. #### 字符型(char[2]),存放单个字符 ‘a’

  3. #### 布尔型(boolean[1]), 存放true flase

    引用数据类型

  4. #### 类(class)
  5. #### 接口(interface)
  6. #### 数组([])
整数类型

Java的整型常量默认为int型,声明long型常量需后加’l’或’L’ bit:计算机中最小的存储单位。byte:计算机中最基本的存储单元。1 byte=8 bit。 long类型有几个bit? [8*8=64bit] 浮点类型

尾数部分可能丢失,造成精度损失(小数都是近似值)。 Java的浮点型常量默认为double型,声明float型常量需后加’f’或’F’

double num1 = 2.7;  //2.7
double num2 = 8.1/3;  //接近2.7的一个小数,而不是2.7
if(num1 == num2){
        System.out.println("相等")
        }
if(Math.abs(num1 - num2)<0.000001){//比较两个数的差值的绝对值
        System.out.println("差值非常小,到我的规定精度,认为相等~~~");
        }
        System.out.println(Arrays.toString(Math.abs(num1 -num2)));
    }

​ [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jTqvZTvf-1646561708965)(D:lwhDateTyporatypora小文件1.jpg)]

字符类型

字符类型是用单引号( ‘’ )括起来的单个字符,例如:char c1=‘a’; char c2=‘中’; char c3=‘9’; 在Java中,char的本质是一个整数,在输出时,是unicode码对应的字符。 http.//tool.chinaz.com/Tools/Unicode.aspx char类型是可以进行运算的,相当于一个整数,因为他有对应的Unicode码 可以直接给char赋一个整数,然后输出时,会按照对应的unicode字符输出

char c1=97;
System.out.println(c1);//a

char c2='a';
System.out.println((int)c2);//97

char c3='韩';
System.out.println((int)c3);//38889

char c4=38889;
System.out.println(c4);//韩

字符和码值的对应关系是通过字符编码表决定的(是规定好) 介绍下字符编码表[sublime测试]

    ASCIi (ASCII编码表一个字节表示, 一个128个字符,实际上一个字节可以表示256个字符,只用128个) Unicode (Unicode编码表固定大小的编码使用两个字节来表示字符,字母和汉字统一都是占用两个字节,这样浪费空间) utf-8 (编码表,大小可变的编码字母使用1个字节,汉字使用3个字节) gbk (可以表示汉字,而且范围广, 字母使用1个字节,汉字2个字节) gb2312 (可以表示汉字,gb2312 < gbk) big5码 (繁体中文,台湾,香港)
布尔类型

适于逻辑运算,一般用于程序流程控制:if条件控制语句 while、do-while、for循环控制语句

boolean pass=true;
if (pass){
    System.out.println("通过考试");
}else{
    System.out.println("未通过考试");
}
基本数据类型转换

自动类型转换

当java程序在进行赋值或者运算时,精度小的类型自动转换为精度大的数据类型,这个就是自动类型转换。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DVrjkIIq-1646561708967)(D:lwhDateTyporatypora小文件2.jpg)]

int num = 'a';//char - >int  97
double d = 80;//int - >double  80.0

有多种类型的数据混合运算时,系统首先将所有数据转换成容量最大的那种数据类型,然后进行计算

int n1 = 10; //ok

float d1 = n1 + 1.1; //错误,n1 + 1.1 => 结果类型是double

double d1 = n1 + 1.1; //对

float d1 = n1 + 1.1F; //对 ,n1 + 1.1F => 结果类型是float

当我们把精度(容量)大 的数据类型赋值给精度(容量)小的数据类型时,就会报错,反之就会进行自动类型转换

int n2 = 1.1; //错误,double => int (byte,short) 和char之间不会相互自动转换 当把具体数赋给 byte 时。先判断该数是否在 byte 范围内,如果是就可以 byte short char 它们三者可以计算,在计算时首先转换为int 类型

byte b1 = 10; // 对,-128~127int n2 = 1; // n2 是intbyte = n2; //错误,如果是变量赋值,判断类型char c1 = b1; //错,byte不能自动转换为char byte short char 它们三者可以计算,在计算时首先转换为int 类型 , boolean不参与转换

byte b2 = 1; byte b3 = 2; short s1 = 1;short s2 = b2+ s1; // 错,b2 +s1 => intint s2 = b2+s1; //错,b2 +s1 => intbyte b4 = b2+b3; //错 b2+b3 => int 强制类型转换

自动转换类型的逆过程,将容量大的数据类型转换为容量小的数据类型,使用时要加上强制转换符(),但可能造成精度损失或溢出,格外要注意

int n1 = (int)1.9;
System.out.println("n1=" + n1);//造成精度损失

int n2 = 2000;
byte b1 = (byte)n2;
System.out.println("b1="+ b1);//造成数据溢出
基本数据类型和String类型的转换

基本数据类型 => String 将基本类型的值+" "即可

int a=1;
String b= a + "";
String => 基本数据类型 通过基本类型的包装类调用parseXX的方法即可 字符串 => 字符char 含义是指 把字符串的第一个字符得到解读 s.charAt(0) 得到s字符串的第一个字符
String s="123";
int num1 = Integer.parseInt(s);
double num2 = Double.parseDouble(s);

System.out.println(s.charAt(0));  

char c1='n';//换行
char c2='t';//制表符 ctrl+d
char c3='r';//回车
char c4='\';//输出
char c5='1';//换行
char c6='2';//换行
char c7='3';//换行

;

System.out.println(s.charAt(0));  

char c1='n';//换行
char c2='t';//制表符 ctrl+d
char c3='r';//回车
char c4='\';//输出
char c5='1';//换行
char c6='2';//换行
char c7='3';//换行
```
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/755060.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号