A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 流空有痕 中级黑马   /  2016-9-13 23:34  /  3011 人查看  /  18 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

1.从控制台录入一个double类型的小数,编写方法实现四舍五入。(只判断小数点后一位,如输入3.49999结果为3,输入3.5321结果为4);答案(仅供参考)
package test;
import java.util.Scanner;
public class Test1 {
        public static void main(String[] args) {
                //创建键盘录入对象
                Scanner sc = new Scanner(System.in);
                System.out.println("请输入一个double类型的小数");
                //获取输入的double数字
                double num = sc.nextDouble();
                //传入方法中
                int x = get(num);
                System.out.println("四舍五入的结果为:"+x);
        }
        private static int get(double num) {
                //将获取的数字转为字符串
                String str = String.valueOf(num);
                //将字符串以小数点切割
                String[] strs = str.split("\\.");
                //获取小数点后的数字
                String num1 = strs[1];
                //获取小数点后数字的第一位,如果大于等于5将让小数点前面的数字加一返回,否则直接返回
                int temp = Integer.parseInt(num1.charAt(0)+"");
                int firstNum =Integer.parseInt(strs[0]);
                if(temp>=5){
                        return (firstNum+1);
                }
                return firstNum;
        }
}

18 个回复

倒序浏览
路过。。。。
回复 举报
瞄一眼。。。
回复 举报
加油啊,反正我点招已经过了,哈哈哈
回复 举报
请问楼主点招难不难啊?
回复 举报
Java的题发到前端来.....
回复 举报
你这是在考研学习前端的同学啊? 用java的来说
回复 举报
还好我学过java,不然都看不懂。。。。。。
回复 举报
可以。。。。。。。。
回复 举报
acfr 中级黑马 2016-10-24 16:54:32
10#
这不是前端的吧...
回复 举报
return (int)(((num+0.05)*10)/10);
回复 举报
回复 举报
怎么跑动到前端这块来发这个java的内容了呀
回复 举报
看不懂阿
回复 举报
你这发错版块了八
回复 举报
瞬间感觉西安小区弱爆了
回复 举报
就问难不难
回复 举报
newu 黑马帝 2016-12-31 13:10:26
18#
怎么跑动到前端这块来发这个java的内容了呀
回复 举报
谢谢分享
回复 举报
您需要登录后才可以回帖 登录 | 加入黑马