Java Array和大数据运算

1、Array类

?sort方法,用来对指定数组中的元素进行排序(元素值从小到大进行排序)
//源arr数组元素{1,5,9,3,7}, 进行排序后arr数组元素为{1,3,5,7,9}
int[] arr = {1,5,9,3,7};
Arrays.sort( arr );
?toString方法,用来返回指定数组元素内容的字符串形式
int[] arr = {1,5,9,3,7};
String str = Arrays.toString(arr); // str的值为[1, 3, 5, 7, 9]
?binarySearch方法,在指定数组中,查找给定元素值出现的位置。若没有查询到,返回位置为-1。要求该数组必须是个有序的数组。
int[] arr = {1,3,4,5,6};
int index = Arrays.binarySearch(arr, 4); //index的值为2
int index2= Arrasy.binarySearch(arr, 2); //index2的值为-1
import java.util.Arrays;

public class Demo01 {

    public static void main(String[] args) {
        /*int[] arr=null;
        int[] arr1={};
        System.out.println(arr.length);//空,会报错
        System.out.println(arr1.length);*/
        int[] arr={3,6,9,11,33,66};
        int index=Arrays.binarySearch(arr, 6);//前提是:数组是升序排列
        System.out.println(index);//返回的是下标
        int index2=Arrays.binarySearch(arr, 20);
        System.out.println(index2);//20在数组中不存在,返回的是该值在数组中应该在的负-下标-1
        int[] arr1={5,9,1,2,77,66,33,22,11,77};
        Arrays.sort(arr1);//生序排序
        for(int i=0;i<arr1.length;i++){
            System.out.print(arr1[i]+" ");
        }
        System.out.println(Arrays.toString(arr1));
    }
}

2、大数据运算

BigInteger: java中long型为最大整数类型,对于超过long型的数据如何去表示呢.在Java的世界中,超过long型的整数已经不能被称为整数了,它们被封装成BigInteger对象.在BigInteger类中,实现四则运算都是方法来实现,并不是采用运算符

import java.math.BigInteger;

public class Demo02 {

    public static void main(String[] args) {
        String str="10000000000000000000000000000000000000000000";
        String str1="20000000000000000000000000000000000000000000";
        BigInteger in1=new BigInteger(str);
        BigInteger in2=new BigInteger(str1);
        System.out.println(in1.add(in2));
        System.out.println(in1.subtract(in2));
        System.out.println(in1.multiply(in2));
        System.out.println(in1.divide(in2));
    }

}

BigDecimal:double和float类型在运算中很容易丢失精度,造成数据的不准确性,Java提供我们BigDecimal类可以实现浮点数据的高精度运算

package demo01;

import java.math.BigDecimal;

public class Demo03 {

    public static void main(String[] args) {
         System.out.println(0.09 + 0.01);
         System.out.println(1.0 - 0.32);
         System.out.println(1.015 * 100);
         System.out.println(1.301 / 100);

         BigDecimal b1=new BigDecimal("0.09");
         BigDecimal b2=new BigDecimal("0.01");
         System.out.println(b1.add(b2));

         BigDecimal b3=new BigDecimal("1.0");
         BigDecimal b4=new BigDecimal("0.32");
         System.out.println(b3.add(b4));

         BigDecimal b5=new BigDecimal("1.015");
         BigDecimal b6=new BigDecimal("100");
         System.out.println(b5.multiply(b6));//乘

         BigDecimal b7=new BigDecimal("1.301");
         BigDecimal b8=new BigDecimal("100");
         System.out.println(b7.divide(b8));//乘

    }

}

原文地址:https://www.cnblogs.com/cgj1994/p/10003980.html

时间: 2024-08-28 13:20:44

Java Array和大数据运算的相关文章

java -&gt;大数据运算(BigInteger)

大数据运算 BigInteger java中long型为最大整数类型,对于超过long型的数据如何去表示呢.在Java的世界中,超过long型的整数已经不能被称为整数了,它们被封装成BigInteger对象.在BigInteger类中,实现四则运算都是方法来实现,并不是采用运算符. BigInteger类的构造方法: BigInteger b = new BigInteger(str); 构造方法中,采用字符串的形式给出整数 四则运算代码: public static void main(Str

Date、DateFormat类、Calendar类、基本类型包装类、System类、Math类、Arrays类、大数据运算类

1.Date (1)概述: 时间的原点:公元1970年 一月一日,午夜0:00:00 对应的毫秒值就是0 注意:时间和日期的计算,必须依赖毫秒值 ----------------Date()获取当前时间 import java.util.Date; public class Demo06boke { public static void main(String[] args) { Date sdf=new Date(); System.out.println(sdf); } } Date(lon

使用Stack堆栈集合大数据运算

使用Stack堆栈集合大数据运算 package com.sta.to; import java.util.Iterator; import java.util.Stack; public class DaMax { public void jiaFa(String value1, String value2) { /** * 更多资料欢迎浏览凯哥学堂官网:http://kaige123.com * @author 小沫 */ // 把字符串用toCharArray拆成字符 char[] c1

java面试(2)--大数据相关

第一部分.十道海量数据处理面试题 1.海量日志数据,提取出某日访问百度次数最多的那个IP. 首先是这一天,并且是访问百度的日志中的IP取出来,逐个写入到一个大文件中.注意到IP是32位的,最多有个2^32个IP.同样可以采用映射的方法, 比如模1000,把整个大文件映射为1000个小文件,再找出每个小文中出现频率最大的IP(可以采用hash_map进行频率统计,然后再找出频率最大 的几个)及相应的频率.然后再在这1000个最大的IP中,找出那个频率最大的IP,即为所求. 或者如下阐述(雪域之鹰)

7、包装类、System、Math、Arrays、大数据运算

基本类型封装 基本数据类型对象包装类概述 *A:基本数据类型对象包装类概述 *a.基本类型包装类的产生 在实际程序使用中,程序界面上用户输入的数据都是以字符串类型进行存储的.而程序开发中,我们需要把字符串数据,根据需求转换成指定的基本数据类型,如年龄需要转换成int类型,考试成绩需要转换成double类型等 *b.八种基本类型对应的包装类 char Character int Integer byte Byte short Short long Long float Float double D

大数据运算模型 MapReduce 原理

大数据运算模型 MapReduce 原理 2016-01-24 杜亦舒 MapReduce 是一个大数据集合的并行运算模型,由google提出,现在流行的hadoop中也使用了MapReduce作为计算模型 MapReduce 通俗解释 图书馆要清点图书数量,有10个书架,管理员为了加快统计速度,找来了10个同学,每个同学负责统计一个书架的图书数量 张同学 统计 书架1王同学 统计 书架2刘同学 统计 书架3...... 过了一会儿,10个同学陆续到管理员这汇报自己的统计数字,管理员把各个数字加

LZ从Java Web转大数据,并且成功拿到上市公司Offer,工资直接涨了9K+

Before 本文的目的是为你(有一定编程基础的同学仔)提供一些想打算转大数据的参考: 如果你是大数据工程师,不太适合你进行进阶学习: 如果你是零编程基础同学仔,你可以参考我之前写的blog,建议先把基础打牢,再去学习大数据: 如果你不是攻城狮,那么你可以当做一个故事即可. 大家好,我是Hongten 今天我要给大家分享一下我的个人经历,我从Java Web转大数据,并且成功拿到上市公司Offer,工资直接涨了9K+ 我大二的时候,就开始接触Java,之前也接触了一些Android的知识,但是最

math,Arrays和大数据运算

Math类 概念 类似这样的工具类,其所有方法均为静态方法,并且一般不会创建对象. 常用方法 Arrays类 概念 此类包含用来操作数组(比如排序和搜索)的各种方法 大数据运算 BigInteger 原文地址:https://www.cnblogs.com/www1842564021/p/12101179.html

Java编程语言开发大数据的优势有哪些?

Java编程语言开发大数据的优势有哪些?Java语言支持各类组件.Java在物联网方面应用.Java移动领域应用.Java支撑超级计算机设备.GPU成为大多数速度最快的超级计算设备所不可或缺的处理器.Java“一次编写随处起效”架构技术能够在工作站上开发自己的软件移植到系统当中. Java编程语言开发大数据的优势: 一.Java支持各类组件 Java版本不断更新,使Java具备更出色的模块化特性.有多种“接入并起效”架构供选择,进一步拓展Java的传统编程模式.性能可扩展能力.模块的出现能够对结