欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java如何將一個(gè)float型數(shù)的整數(shù)部分和小數(shù)分別輸出顯示

 更新時(shí)間:2022年07月12日 11:11:58   作者:frozen122  
這篇文章主要介紹了java如何將一個(gè)float型數(shù)的整數(shù)部分和小數(shù)分別輸出顯示,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

將一個(gè)float型數(shù)的整數(shù)部分和小數(shù)分別輸出顯示

三種方法

方一:直接類型轉(zhuǎn)換,再加減,問(wèn)題是類型轉(zhuǎn)換導(dǎo)致的小數(shù)位數(shù)精確度變化,目前沒(méi)找到解決方法

方二:轉(zhuǎn)換成字符串后運(yùn)用.split方法直接從小數(shù)點(diǎn)處切分

方三:轉(zhuǎn)換成字符串后,標(biāo)記小數(shù)點(diǎn)位置后,用substring方法分別構(gòu)造兩個(gè)子字符串

注意點(diǎn):

  • 負(fù)數(shù)取整,例 -1.2 的整數(shù)部分是 -2,小數(shù)部分是0.8
//三種方法
//負(fù)數(shù)和正數(shù)的整數(shù)情況需要分開(kāi)考慮
import java.util.*;
public class Split {
	
	public static void main(String[] args) {
		float num,b;
		int a,pointIndex;
		
		Scanner s = new Scanner(System.in);
		System.out.println("請(qǐng)輸入一個(gè)float數(shù):");
		num = s.nextFloat();
//		判斷正負(fù)
		if(num >=0) {
//			正數(shù)部分計(jì)算
//			方法一:直接轉(zhuǎn)換數(shù)字類型后加減,問(wèn)題是轉(zhuǎn)換類型會(huì)導(dǎo)致小數(shù)部分變化,不知道怎么解決??!
			a = (int) num;
			b = num - a;
			System.out.println(num + "整數(shù)部分:" + a);
			System.out.println(num + "小數(shù)部分:" + b);
			
//			方法二:轉(zhuǎn)換成字符串,用方法split按小數(shù)點(diǎn)前后分割
			String str = String.valueOf(num);                   //將float類型轉(zhuǎn)換成字符串
			String[] ary = str.split("\\.");			
			System.out.println(num + "整數(shù)部分為:" + ary[0]);
			System.out.println(num + "小數(shù)部分為:" + "0." + ary[1]);
			
//			方法三:同樣轉(zhuǎn)換成字符串,用方法indexOf標(biāo)記小數(shù)點(diǎn)位置
			pointIndex = str.indexOf('.');
			System.out.println(num + "的整數(shù)部分為:" + str.substring(0,pointIndex));
			System.out.println(num + "的小數(shù)部分為:" + "0" + str.substring(pointIndex,str.length()));			
	    }
		
//		負(fù)數(shù)部分計(jì)算,注意,-1.7的正數(shù)部分是-2,小數(shù)部分是0.3
		else {
//			方一
			a = (int) num - 1;
			b = num - a;
			System.out.println(num + "整數(shù)部分:" + a);
			System.out.println(num + "小數(shù)部分:" + b);
//			方二
			String str = String.valueOf(num);                   //將float類型轉(zhuǎn)換成字符串
			String[] ary = str.split("\\.");	
			a = Integer.parseInt(ary[0]) -1;
			b = 1 - Float.parseFloat("0." + ary[1]);            //需要計(jì)算,再次轉(zhuǎn)換成float類型
			System.out.println(num + "整數(shù)部分為:" + a);
			System.out.println(num + "小數(shù)部分為:" + b);
			
//			方三
			pointIndex = str.indexOf('.');
			a = Integer.parseInt(str.substring(0,pointIndex)) -1;
			b = 1 - Float.parseFloat("0" + str.substring(pointIndex));
			System.out.println(num + "的整數(shù)部分為:" + a);
			System.out.println(num + "的小數(shù)部分為:" + b);						
		}				
	}
}

這一題非常適合后面做按鈕練習(xí)

java. float 取整

  • 向上取整:
Math.ceil() //只要有小數(shù)都+1
  • 向下取整:
Math.floor() //不取小數(shù)
  • 四舍五入:
Math.round() //四舍五入

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • java中如何截取字符串最后一位

    java中如何截取字符串最后一位

    這篇文章主要介紹了java中如何截取字符串最后一位的實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • Spring中的@ConditionalOnProperty作用和用法詳解

    Spring中的@ConditionalOnProperty作用和用法詳解

    這篇文章主要介紹了Spring中的@ConditionalOnProperty作用和用法詳解,在spring boot中有時(shí)候需要控制配置類是否生效,可以使用@ConditionalOnProperty注解來(lái)控制@Configuration是否生效,需要的朋友可以參考下
    2023-11-11
  • Spring中@Scope的幾種取值方式

    Spring中@Scope的幾種取值方式

    這篇文章主要介紹了Spring中@Scope的幾種取值方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • Idea 2020.2 創(chuàng)建web、Spring項(xiàng)目的教程圖解

    Idea 2020.2 創(chuàng)建web、Spring項(xiàng)目的教程圖解

    這篇文章主要介紹了Idea 2020.2 創(chuàng)建web、Spring項(xiàng)目的教程,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-08-08
  • Java字節(jié)碼的增強(qiáng)技術(shù)

    Java字節(jié)碼的增強(qiáng)技術(shù)

    這篇文章簡(jiǎn)單介紹了幾種Java字節(jié)碼的增強(qiáng)技術(shù),如ASM、Javassist、Byte Buddy、JVM-SANDBOX,需要的朋友可以參下面文章
    2021-08-08
  • 手工體驗(yàn)smtp和pop3協(xié)議 郵件實(shí)現(xiàn)詳解(二)

    手工體驗(yàn)smtp和pop3協(xié)議 郵件實(shí)現(xiàn)詳解(二)

    POP3/IMAP協(xié)議定義了郵件客戶端軟件和POP3郵件服務(wù)器的通信規(guī)則,這篇文章我們就來(lái)手工體驗(yàn)SMTP和POP3協(xié)議的奧秘,感興趣的小伙伴們可以參考一下
    2017-10-10
  • Java代理的幾種實(shí)現(xiàn)方式總結(jié)

    Java代理的幾種實(shí)現(xiàn)方式總結(jié)

    本文將通過(guò)例子說(shuō)明java代理的幾種實(shí)現(xiàn)方式,并比較它們之間的差異,文中通過(guò)代碼示例給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的參考價(jià)值,需要的朋友可以參考下
    2023-12-12
  • java注釋轉(zhuǎn)json插件開(kāi)發(fā)實(shí)戰(zhàn)詳解

    java注釋轉(zhuǎn)json插件開(kāi)發(fā)實(shí)戰(zhàn)詳解

    這篇文章主要為大家介紹了java注釋轉(zhuǎn)json插件開(kāi)發(fā)實(shí)戰(zhàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-06-06
  • 使用spring連接及操作mongodb3.0實(shí)例

    使用spring連接及操作mongodb3.0實(shí)例

    這篇文章主要介紹了使用spring連接及操作mongodb3.0實(shí)例,詳細(xì)的介紹了使用spring的情況下,在java中簡(jiǎn)單操作mongodb。有興趣的可以了解一下。
    2016-12-12
  • Java 8系列之Stream中萬(wàn)能的reduce用法說(shuō)明

    Java 8系列之Stream中萬(wàn)能的reduce用法說(shuō)明

    這篇文章主要介紹了Java 8系列之Stream中萬(wàn)能的reduce用法說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-08-08

最新評(píng)論