java的一些问题
1. 判断是否是奇数:
public static boolean isOdd(int i) { return i %2 != 0 ; }
2. System.out.println(2.0 - 1.1); 输出:0.89999999 99999999 (Double型的)
System.out.println(new BigDecimal("2.00").subtract(new BigDecimal("1.10"))); --输出 0.90 要加上引号,否则会有小数。
System.out.println(new BigDecimal("2.01").subtract(new BigDecimal("1.65"))); -- 输出 0.36
System.out.println(new BigDecimal(2.0).subtract(new BigDecimal(1.1))); -- 输出 0.899 99999999 99999111 82158029 98747676 61094665 52734375
System.out.printf("%.2f\n", 2.0-1.115); --输出:0.89
final long MICROS_PER_DAY = 24 * 60 * 60 * 1000 * 1000;
final long MILLIS_PER_DAY = 24 * 60 * 60 * 1000;
System.out.println(24 * 60 * 60 * 1000 * 1000); --- 输出: 500654080 , 当做了int型,导致越界。
System.out.println(24 * 60 * 60 * 1000 ); --- 输出: 86400000
System.out.println(MICROS_PER_DAY/MILLIS_PER_DAY); --- 输出 :5
对于长整型的计算,要加上L: System.out.println(24L * 60 * 60 * 1000 * 1000); --- 输出: 86400000 000
System.out.println("H" + "a"); 输出: Ha
System.out.println("H" + 'a'); Ha
System.out.println('H' + 'a'); 169
char[] numbers = {'1','2','3'};
System.out.println("a" + numbers); 输出:a[C@c3c749
Prints a String and then terminate the line. This method behaves as though it invokes and then print(String).println()
System.out.println(numbers); 输出:123
Prints an array of characters and then terminate the line. This method behaves as though it invokes and then print(char[]).println()
\u0022 是双引号的unicode编码。
System.out.println("a\u0022 + \u0022b ".length()); 相当于: System.out.println("a" + "b ".length()); , 输出 a2 。(b后面有一个空格)
System.out.println(Test.class.getName().replace(".","/")); 输出: com/Test
Replaces each substring of this string that matches the literal target sequence with the specified literal replacement sequence. The replacement proceeds from the beginning of the string to the end, for example, replacing "aa" with "b" in the string "aaa" will result in "ba" rather than "ab".
System.out.println(Test.class.getName().replaceAll(".","/")); 输出:////////
System.out.println(Test.class.getName().replaceAll("\\.","/")); 输出:com/Test
Replaces each substring of this string that matches the given regular expression with the given replacement.
An invocation of this method of the form str.replaceAll(regex, repl) yields exactly the same result as the expression
java.util.regex.Pattern.compile(regex).matcher(str).replaceAll(repl)
StringBuffer word = null;
word = new StringBuffer('P');
‘P’ 当做了int数。
Constructs a string buffer with no characters in it and the specified initial capacity.
- Parameters:
- capacity the initial capacity.
System.out.println(word); 输出换行
System.out.println(word.append("a")); 输出 a
int j = 0;
for(int i = 0; i < 100; i++){
j = j++;
System.out.println(j);
}
输出100 行 0 (j的值总是 0):
0
0
……
final int END=Integer.MAX_VALUE; //2147483647
final int START = END - 100;
int count = 0;
for(int i = START; i <= END; i++){
count++;
System.out.println(i); -- 死循环。 当 i 达到 2147483647 ,再增加会变成负数。
}
java的一些问题的更多相关文章
- Spark案例分析
一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...
- 故障重现(内存篇2),JAVA内存不足导致频繁回收和swap引起的性能问题
背景起因: 记起以前的另一次也是关于内存的调优分享下 有个系统平时运行非常稳定运行(没经历过大并发考验),然而在一次活动后,人数并发一上来后,系统开始卡. 我按经验开始调优,在每个关键步骤的加入如 ...
- Elasticsearch之java的基本操作一
摘要 接触ElasticSearch已经有一段了.在这期间,遇到很多问题,但在最后自己的不断探索下解决了这些问题.看到网上或多或少的都有一些介绍ElasticSearch相关知识的文档,但个人觉得 ...
- 论:开发者信仰之“天下IT是一家“(Java .NET篇)
比尔盖茨公认的IT界领军人物,打造了辉煌一时的PC时代. 2008年,史蒂夫鲍尔默接替了盖茨的工作,成为微软公司的总裁. 2013年他与微软做了最后的道别. 2013年以后,我才真正看到了微软的变化. ...
- 故障重现, JAVA进程内存不够时突然挂掉模拟
背景,服务器上的一个JAVA服务进程突然挂掉,查看产生了崩溃日志,如下: # Set larger code cache with -XX:ReservedCodeCacheSize= # This ...
- 死磕内存篇 --- JAVA进程和linux内存间的大小关系
运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...
- 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用
有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...
- Java多线程基础学习(二)
9. 线程安全/共享变量——同步 当多个线程用到同一个变量时,在修改值时存在同时修改的可能性,而此时该变量只能被赋值一次.这就会导致出现“线程安全”问题,这个被多个线程共用的变量称之为“共享变量”. ...
- Java多线程基础学习(一)
1. 创建线程 1.1 通过构造函数:public Thread(Runnable target, String name){} 或:public Thread(Runnable target ...
- c#与java的区别
经常有人问这种问题,用了些时间java之后,发现这俩玩意除了一小部分壳子长的还有能稍微凑合上,基本上没什么相似之处,可以说也就是马甲层面上的相似吧,还是比较短的马甲... 一般C#多用于业务系统的开发 ...
随机推荐
- HBase设计与开发
HBase设计与开发 @(HBase) 适合HBase应用的场景 成熟的数据分析主题,查询模式已经确定且不会轻易改变. 传统数据库无法承受负载. 简单的查询模式. 基本概念 行健:是hbase表自带的 ...
- spark完全分布式集群搭建
最近学习Spark,因此想把相关内容记录下来,方便他人参考,也方便自己回忆吧 spark开发环境的介绍资料很多,大同小异,很多不能一次配置成功,我以自己的实际操作过程为准,详细记录下来. 1.基本运行 ...
- [Angular] Angular Custom Change Detection with ChangeDetectorRef
Each component has its own ChangeDetectorRef, and we can inject ChangeDetectorRef into constructor: ...
- [Functional Programming] Pull Many Random Numbers in a Single State ADT Transaction
We have the ability to select a single random card from a pile of twelve cards, but we would like to ...
- python 页面信息抓取
1. 特点 在python 解析html这篇文章中已经做了初步的介绍,接下来再坐进一步的说明.python抓取页面信息有下面两个特点: 依赖于HTML的架构. 微小的变化可能会导致抓取失败,这取决于你 ...
- python——PEP8 Python 编码规范整理
决定开始Python之路了,利用业余时间,争取更深入学习Python.编程语言不是艺术,而是工作或者说是工具,所以整理并遵循一套编码规范是十分必要的.所以今天下午我根据PEP 8整理了一份,以后都照此 ...
- Struts2--百度百科
Struts 2是Struts的下一代产品,是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架.其全新的Struts 2的体系结构与Struts 1的体系结构差别 ...
- 详解Android首选项框架的使用
首选项这个名词对于熟悉Android的朋友们一定不会感到陌生,它经常用来设置软件的运行参数. Android提供了一种健壮并且灵活的框架来处理首选项.它提供了简单的API来隐藏首选项的读取和持久化,并 ...
- C语言 | 计算器实现 version 2.
在之前版本中使用栈结构来实现,但由于51单片机不支持malloc函数,所以使用C语言又写了一个计算器版本. 通过数组存放值和操作符模拟栈操作. 实现代码: #include <stdio.h&g ...
- c与c++中的强制类型转换区别
强制类型转换的一般形式为: (类型名)(表达式) 如:(int)a.这是C语言使用的形式,C++把它保留了下来,以利于兼容. C++还增加了以下形式: 类型名(表达式) 如:int(a).这种形式类似 ...