大数据必学Java基础(十三):基本数据类型的转换

Posted Lansonli

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数据必学Java基础(十三):基本数据类型的转换相关的知识,希望对你有一定的参考价值。

基本数据类型的转换

一、什么是类型转换

在赋值运算或者算数运算的时候,要求数据类型一致,就要进行类型的转换。

二、类型转换的种类

自动转换,强制转换

三、内存演示

大数据必学Java基础(十三):基本数据类型的转换_类型转换

大数据必学Java基础(十三):基本数据类型的转换_数据_02

四、代码

public class TestVar10
public static void main(String[] args)
//类型转换的两种形式:
double d = 6;//int-->double 自动类型转换
System.out.println(d);
int i = (int)6.5;//double--->int 强制类型转换 (强转)
System.out.println(i);

//在同一个表达式中,有多个数据类型的时候,应该如何处理:
//多种数据类型参与运算的时候,整数类型,浮点类型,字符类型都可以参与运算,唯独布尔类型不可以参与运算。
//double d2 = 12+1294L+8.5F+3.81+a+true;
double d2 = 12+1294L+8.5F+3.81+a;
System.out.println(d2);
/*
类型级别:(从低到高的)
byte,short,char-->int--->long--->float--->double
级别用来做什么?当一个表达式中有多种数据类型的时候,要找出当前表达式中级别最高的那个类型,然后
其余的类型都转换为当前表达式中级别最高的类型进行计算。
double d2 = 12+1294L+8.5F+3.81+a;
= 12.0+1294.0+8.5+3.81+97.0
*/
int i2 = (int)(12+1294L+8.5F+3.81+a);
System.out.println(i2);
/*
在进行运算的时候:
左=右 : 直接赋值
左<右 :强转
左>右 :直接自动转换
*/

//以下情况属于特殊情形:对于byte,short,char类型来说,只要在他们的表数范围中,赋值的时候就不需要进行
//强转了直接赋值即可。
byte b = 12;
System.out.println(b);
byte b2 = (byte)270;
System.out.println(b2);



大数据必学Java基础(十三):基本数据类型的转换_键盘录入_03

五、练习:final,字符常量,Scanner的使用

import java.util.Scanner;//形象理解:在java.util下将Scanner拿过来用
public class TestVar11
public static void main(String[] args)
//实现功能:求圆的周长和面积
//【1】提取变量:提取变量,就是为了一劳永逸,以后只要改变变量的值,下面只要用到这个变量的地方,取值也都发生变化了
//【2】一个变量被final修饰,这个变量就变成了一个常量,这个常量的值就不可变了
// 这个常量就是我们所说的 字符常量 ---》pi
// 约定俗成的规定:字符常量的名字全部大写
//【3】使用扫描器:Scanner的使用--》注意通过形象的理解去使用
final double PI = 3.14;
//拿来一个扫描器:
Scanner sc = new Scanner(System.in);
//给一个友好性的提示:
System.out.print("请录入一个半径:");
//让扫描器扫描键盘录入的int类型的数据:
int r = sc.nextInt();

//求周长:
double c = 2*PI*r;
System.out.println("周长为:"+c);

//求面积:
//PI = 9.29;报错:TestVar11.java:12: 错误: 无法为最终变量pi分配值
double s = PI*r*r;
System.out.println("面积为:"+s);



大数据必学Java基础(十三):基本数据类型的转换_数据_04

六、练习:加深对Scanner的使用

大数据必学Java基础(十三):基本数据类型的转换_键盘录入_05


import java.util.Scanner;
public class TestVar12
public static void main(String[] args)
//键盘录入学生的信息:年龄,身高,姓名,性别:
//键盘录入年龄:(接收int类型数据)
Scanner sc = new Scanner(System.in);
System.out.print("请录入年龄:");
int age = sc.nextInt();
//键盘录入身高:(接收double类型数据)
System.out.print("请录入身高:");
double height = sc.nextDouble();
//键盘录入姓名:(接收String类型数据--》字符串)
System.out.print("请录入姓名:");
String name = sc.next();
//键盘录入性别:(接受char类型)
System.out.print("请录入性别:");
String sexStr = sc.next();
char sex = sexStr.charAt(0);
//上面两句可以合为一句表示:char sex = sc.next().charAt(0);
System.out.println("该学生的信息为:姓名是:"+name+",年龄是:"+age+",身高为:"+height+",性别是:"+sex);

大数据必学Java基础(十三):基本数据类型的转换_类型转换_06

以上是关于大数据必学Java基础(十三):基本数据类型的转换的主要内容,如果未能解决你的问题,请参考以下文章

大数据必学Java基础(七十三):数据流DataInputStream和DataOutputStream介绍

大数据必学Java基础(五十三):Colletion接口

大数据必学Java基础(六十三):COW并发容器讲解

大数据必学Java基础(九十三):JDBC完成CURD

大数据必学Java基础:基本数据类型

大数据必学Java基础:基本数据类型