JAVA基础语法编程详解

1 类型转换

  • 描述:
    设计一个方法,将一个小于2147483647的double类型变量以截断取整方式转化为int类型
  • 输入描述:
    随机double类型变量
  • 输出描述:
    转化后的int类型变量
  • 示例
    输入:123.45
    输出: 123

题解思路:

这里需要用到java数据类型转换思路:

Java数据类型按照取值范围的大小排序,从小到大依次为:
类型转换
操作符“=”进行赋值运算,这是使用最频繁的操作符。在表达式“target=source”中,当变量target和变量source的数据类型不一致,如何赋值呢?如果source的数据类型的取值范围小,target的数据类型的取值范围大,就可以直接进行赋值,例如:

byte source=1;
int target=source;  //合法

如果source的数据类型的取值范围大,target的数据类型的取值范围小,就不允许直接进行赋值,而是要进行强制类型的转换。例如:

int source=1;
byte target=(byte)source;  //合法
byte result=source;  //非法

总结:

在Java中,有多种数据类型之间的转换方法,下面介绍几种常用的类型转换方法。
**1. 自动类型转换:**当两种数据类型可以兼容时,Java会自动将其中的一种类型转换成另一种类型。

例如,将int类型赋值给double类型,Java会自动将int类型转换为double类型。

**2. 强制类型转换:**当两种数据类型不兼容时,需要使用强制类型转换。强制类型转换可以将一个大的数据类型转换为一个小的数据类型,但可能会导致精度丢失。

例如,将double类型强制转换为int类型,可能会导致小数部分被截断。
语法:目标类型 变量名 = (目标类型) 原始值;

**3. 字符串转换:**Java中可以使用一些方法将字符串转换为其他数据类型,或将其他数据类型转换为字符串。

例如,将一个字符串转换为int类型,可以使用Integer.parseInt()方法
将一个int类型转换为字符串,可以使用String.valueOf()方法
例如,将字符串"123"转换为int类型:

String str = "123";  
int num =Integer.parseInt(str); ```

**4. 包装类转换:**Java中的包装类可以将一个基本数据类型转换为一个对象,或将一个对象转换为一个基本数据类型。

例如,将int类型转换为Integer对象,可以使用Integer.valueOf()方法;
将Integer对象转换为int类型,可以使用intValue()方法
例如,将int类型的值1转换为Integer对象:

int num = 1;   
Integer obj = Integer.valueOf(num); ```

题解

思路一:直接使用强制类型转换

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        double d = scanner.nextDouble();
        System.out.println(Main.typeConversion(d));
    }
    public static int typeConversion(double d){

        //write your code here......
        return (int)d;
    }
}

思路二:使用字符串转换

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        double d = scanner.nextDouble();
        System.out.println(Main.typeConversion(d));
    }
    public static int typeConversion(double d){

        //write your code here......
        
    String str =  String.valueOf(d);
    String substring = str.substring(0, str.lastIndexOf("."));
    return Integer.valueOf(substring).intValue();
    }
}

显然这个题直接使用强制类型转换比较简单通俗易懂,不过也需要掌握其他七种方法的操作与使用!!!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

septnancye

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值