码迷,mamicode.com
首页 > 其他好文 > 详细

数字择优( 计算一个数与一组数字中的哪一个数字大小最接近)

时间:2019-12-19 20:54:44      阅读:130      评论:0      收藏:0      [点我收藏+]

标签:测试结果   print   arrays   new   reset   ima   src   length   integer   

一,应用场景

应需求根据两组经纬度计算出B点相对于A点的角度后,根据这个角度在一组预置点中选取最近的一个预置点

二,代码部分

 1 /**
 2      *   计算一个数与一组数字中的哪一个数字大小最接近
 3      * @param re
 4      * @param ble
 5      * @return
 6      */
 7     public static int choicePreset(int[] re,int ble) {
 8         //1.存差值的绝对值
 9         int[] result=new int[re.length];
10         //2.存差值对应的数字
11         Map<Integer, Integer> map=new HashMap<>();
12         int min=0;
13         for (int i=0;i<re.length;i++) { 
14             //3.计算出这两个数字之间的差,绝对值
15             min=Math.abs(re[i]-ble);
16             result[i]=min;
17             map.put(min, re[i]);
18         }
19         //对差值的绝对值排序
20         Arrays.sort(result); 
21         //返回与ble差值最小一个数
22         return    map.get(result[0]);
23     }
public static void main(String[] args) throws InterruptedException {
        int[] re= {1,5,6,9,25,36,95,64,23};
        int ble=96;
        System.out.println(choicePreset(re, ble));
}

三.测试结果

技术图片

数字择优( 计算一个数与一组数字中的哪一个数字大小最接近)

标签:测试结果   print   arrays   new   reset   ima   src   length   integer   

原文地址:https://www.cnblogs.com/KdeS/p/12069931.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!