首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >2个简单Java问题

2个简单Java问题
EN

Stack Overflow用户
提问于 2015-01-21 09:04:52
回答 4查看 163关注 0票数 0

第一个问题:我试图按反向顺序打印出四个双值,所以如果用户输入“12,3,4”,我希望它打印出"4,3,2,1“,这是我的编码。

代码语言:javascript
运行
复制
// User enters 4 float values here
System.out.println("Enter 4 float values");
inputValues2 = input.readLine();
String[] dblValues = inputValues2.split("\\s+");

第二个问题:我想打印出一个双值的整数部分。我想我正在尝试将双值转换为int值。我尝试过这两种不同的方法,并得到了它们的错误。有什么主意吗?也许我应该对整个数字做个四舍五入??

代码语言:javascript
运行
复制
int dblConvert = dblAverage.intValue();           // One way
int dblConvert = Integer.parseInt(dblAverage);    // Second way
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-01-21 09:06:52

为你的问题找到答案/提示。

  1. 您必须以相反的顺序打印数组的内容。 对于(int = dblValues.length -1;i - >= 0;i-){ System.out.println(dblValuesi);} 对于乞丐来说,这是最基本的方法。他们是一些预先指定的图书馆来做这项工作。
  2. 您可以使用int a = (int) Math.round(doubleVar);
票数 9
EN

Stack Overflow用户

发布于 2015-01-21 09:09:03

对于第二个问题:有一个Math.round()方法。然后,您需要在安全途径中将返回的long转换为int。

票数 0
EN

Stack Overflow用户

发布于 2015-01-21 09:13:15

如果你不想按反序打印数字并自然排序,你可以将它们添加到一个列表中并排序。

如果你也不关心四舍五入,你可以投一个双倍

代码语言:javascript
运行
复制
    String s = "4 3 2 1";
    String[] split = s.split("\\s+");
    List<Integer> numbers = new LinkedList<>();

    for (String toAdd : split) {
        numbers.add(Integer.parseInt(toAdd));
    }       

    Collections.sort(numbers);      
    System.out.println(numbers);

    System.out.println((int)45.7654);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28063213

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档