BigInteger / BigDecimal / string 一些常用的函数:

加 add
减 substract
乘 multiply
除 divid
取余 mod / remainder (reminder可用于BigDecimal)
次幂 pow(int)
绝对值 abs
相反数 negate
比较 compareTo / equals
        e.g: a.equals(b) a和b相等(返回true和false) ; a.compareTo(b) a和b不相等(返回0和1);
强转为int / double : intValue / doubleValue
a除b的整数部分: divideToIntegralValue (BigDecimal)
a除b: a.divideAndRemainder(b)[0] 
a除b的余数 : a.divideAndRemainder(b)[1] (BigInteger / BigDecimal 均可)
判断是否某string开头(是否0开头)   startsWith("0");
去掉string前面长度为1的串 substring(1);
数转string string s=a.toString();(会有科学记术法)
        toPlainString());
m=l.getBytes();    //  把 l 的ASCII 存进 m 数组  (其中 static byte[] m; string l;)
去除前导 后导 零 
BigDecimal a=a.stripTrailingZeros().toPlainString();

关于这个东西嘛...听说杭电的服务器比较老 
所以00.0000这种东西不会去除多余的零 所以要特判. 四舍五入保留2位小数 BigDecimal a=a.setScale(2, BigDecimal.ROUND_DOWN); //直接删去2位小数后面的
              ROUND_UP //进位
              ROUND_HALF_UP //四舍五入
              ROUND_HALF_DOWN//五舍六入
a的小数点后有机为数字 a.scale();

定义数组
int []a=new int[105];
定义全局变量 要加 static 自定义函数 如 最常用的gcd:
public static BigInteger gcd(BigInteger a, BigInteger b)
{

return
b.compareTo(BigInteger.ZERO)==? a:gcd(b, a.mod(b));
}
快速乘
static BigInteger Pow(BigInteger a, BigInteger b)  // a^b
{
BigInteger
ans=BigInteger.ONE;
while
(b.compareTo(BigInteger.ZERO)!=)
{

if
(b.mod(BigInteger.valueOf()).compareTo(BigInteger.ZERO)!=)
ans=ans.multiply(a);
b=b.divide(BigInteger.valueOf());
a=a.multiply(a);
}

return
ans;
}
 

[JAVA]各种杂七杂八的东西......的更多相关文章

  1. Java 好用的东西

    Java自带的一些好用的东西: 求一个数的每一位:(toCharArray) int i = 10;char[] s = String.valueOf(i).toCharArray(); 十进制转二进 ...

  2. JAVA 容易忽略的东西

    Java中的取余会出现负数.用Math.floorMod()方法可以掰正,但是也仅限被除数是负数的情况,如果除数是负数,这个没用. 和C不一样,Java中的字符串是不可变字符串,不能修改Java字符串 ...

  3. java 中的好东西 jackson

    转自: https://github.com/FasterXML/jackson 重要的是: jackson 支持 第三方数据类型 jsonobject jsonarray( json.org/jav ...

  4. java GC是何时对什么东西做什么事情

    之前学习了javaGC的原理机制,有了一定的了解,现在做一个整理总结,便于理解记忆,包括三个问题: 1. java GC是什么时候做的? 2. java GC作用的东西是什么? 3. java GC具 ...

  5. 2. Java中的垃圾收集 - GC参考手册

    标记-清除(Mark and Sweep)是最经典的垃圾收集算法.将理论用于生产实践时, 会有很多需要优化调整的地点, 以适应具体环境.下面通过一个简单的例子, 让我们一步步记录下来, 看看如何才能保 ...

  6. c#与java的区别

    经常有人问这种问题,用了些时间java之后,发现这俩玩意除了一小部分壳子长的还有能稍微凑合上,基本上没什么相似之处,可以说也就是马甲层面上的相似吧,还是比较短的马甲... 一般C#多用于业务系统的开发 ...

  7. 为什么做java的web开发我们会使用struts2,springMVC和spring这样的框架?

    今年我一直在思考web开发里的前后端分离的问题,到了现在也颇有点心得了,随着这个问题的深入,再加以现在公司很多web项目的控制层的技术框架由struts2迁移到springMVC,我突然有了一个新的疑 ...

  8. Core Java 总结(关键字,特性问题)

    2016-10-19 说说&和&&的区别 初级问题,但是还是加入了笔记,因为得满分不容易. &和&&都可以用作逻辑与的运算(两边是boolean类型), ...

  9. 转:大神提出来的java服务器方面面试问题(当作自己的学习目标平时得多注意)

    因为一些个人原因,陆陆续续参加了一些校招补招.社招的笔试和面试(BAT),也包括一些国外公司(Spotify, Google, Ericsson),最后有幸被网易收入麾下,拿到了S.下面罗列一些我复习 ...

随机推荐

  1. 从CSDN转战于此

    平时喜欢写博客,开始是再CSDN,但CSDN博客功能实在不是很好.听说博客园的博客功能很不错,今天就来到此地.实际上很早就注册了博客园,但博客今天才申请的. 博客园,来了!

  2. asp.net 中excel 导入数据库

    protected void Button1_Click(object sender, EventArgs e) { SqlConnection conn = new SqlConnection(Sy ...

  3. IOS之KVC机制(Object-C篇)

    开发环境:xcode7 一.KVC概述 1.KVC是KeyValueCoding的简称,它是一种可以直接通过类属性的名字来作key,再绑定key的值来访问类属性的机制,而不再通过利用@property ...

  4. 关于ios的手势识别(GestureRecognizers)讲解

    大家都知道,苹果的设备,不管是mac机器还是iPhone或iad,都支持多点触控,进而延伸了多种手势识别的功能.这为用户带来了很大的便携性和多样灵活性,极大的方便了用户的使用.足以见手势识别(Gest ...

  5. C#定义自定义类型转换

    类型转换不限于单一继承链中的类型(派生类转换为基类或者基类转换为派生类),完全不相关的类型之间也能进行转换.关键在于在两个类型之间提供转型操作符. 在下面这样的情况下应该定义显式转型操作符: 在转型有 ...

  6. C# 编码约定

    参考自 MSDN     https://msdn.microsoft.com/zh-cn/library/ff926074.aspx , 只摘要个人觉得有用部分 命名约定 在不包括 using 指令 ...

  7. setInterval()与setTimeout()计时器

    JavaScript是单线程语言,但是它可以通过设置超时值和间歇时间值来指定代码在特定的时刻执行.超时值是指在指定时间之后执行代码,间歇时间值是指每隔指定的时间就执行一次代码. 超时调用 超时调用使用 ...

  8. 如何更改Chrome默认的搜索引擎

    1 打开Chrome浏览器之后,点击窗口右上角的图标,在弹出的菜单中点击设置,如图所示: 2  在打开的窗口中,点击管理搜索引擎,如下图所示: 3 在弹出的窗口中,找到百度的搜索引擎或者bing的搜索 ...

  9. [HttpClient]SSL双向实例

    package com.jerry.httpclient; import java.io.File; import java.io.FileInputStream; import java.secur ...

  10. 网页制作常见的面试题(怎样兼容IE6/IE7/火狐浏览器)

    1.IE6双边距问题? 在IE6的浏览器中明明设置的是10px的margin却为什么显示的是20px的margin其实这个Ie6的一个双边距BUG例如:<style type="tex ...