Java面试题之六
三十一.如何取小数点前两位,并四舍五入。
package com.lovo;
public class TestDot2 {
// 方法1
public void test1(double c) {
java.text.DecimalFormat df = new java.text.DecimalFormat("#.##");
System.out.println(df.format(c));
}
// 方法2
public void test2(double c) {
java.math.BigDecimal bd = new java.math.BigDecimal(String.valueOf(c));
bd = bd.setScale(2, java.math.BigDecimal.ROUND_HALF_UP);
System.out.println(bd);
}
// 方法3
public void test3(double c) {
long l1 = Math.round(c * 100); // 四舍五入
double ret = l1 / 100.0; // 注意:使用 100.0 而不是 100
System.out.println(ret);
}
public static void main(String[] args) {
double c = 3.056;
TestDot2 td2 = new TestDot2();
td2.test1(c);
// td2.test2(c);
// td2.test3(c);
}
}
三十二.如何判断某个日期是不是当月最后一天以及如何获取当月的最后一天。
package com.lovo;
import java.util.Calendar;
public class Test {
public static void main(String[] args) {
Calendar c = Calendar.getInstance();
c.set(Calendar.YEAR, 2004);
c.set(Calendar.MONTH, 11);
c.set(Calendar.DAY_OF_MONTH, 30);
System.out.println("输入的日期是:" + c.get(Calendar.YEAR) + "-"
+ (c.get(Calendar.MONTH) + 1) + "-"
+ c.get(Calendar.DAY_OF_MONTH));
judgeIsLastDay(c);
getLastDay(c);
}
/**
* 判断某个日期是不是当月的最后一天
*
* @param c
*/
private static void judgeIsLastDay(Calendar c) {
Calendar c1 = (Calendar) c.clone();
c.add(Calendar.DAY_OF_MONTH, 1);
if (c.get(Calendar.MONTH) != c1.get(Calendar.MONTH)) {
System.out.println("你输入的日期是当月最后一天");
} else {
System.out.println("你输入的日期不是当月最后一天");
}
}
/**
* 获取某个日期所在月份的最后一天
*
* @param c
*/
private static void getLastDay(Calendar c) {
c.add(Calendar.MONTH, 1);
c.set(Calendar.DAY_OF_MONTH, 1);
c.add(Calendar.DAY_OF_MONTH, -1);
System.out.println("当月最后一天的日期是:" + c.get(Calendar.YEAR) + "-"
+ (c.get(Calendar.MONTH) + 1) + "-"
+ c.get(Calendar.DAY_OF_MONTH));
}
}
三十三、如何唤起类中的一个方法?
三步:
1.产生一个Class数组,说明方法的参数(得到参数的类模板数组,用以解决有方法重载的情况)。
2.通过Class对象及方法参数得到Method(得到需要唤醒的方法)。
3.通过method.invoke(实例,参数值数组)唤醒方法(唤醒方法)。
Java面试题之六的更多相关文章
- java面试题及答案(转载)
JAVA相关基础知识1.面向对象的特征有哪些方面 1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分,暂时 ...
- 115个Java面试题和答案——终极列表(下)
第一篇讨论了面向对象编程和它的特点,关于Java和它的功能的常见问题,Java的集合类,垃圾收集器,本章主要讨论异常处理,Java小应用程序,Swing,JDBC,远程方法调用(RMI),Servle ...
- Java面试题(全)
JAVA部分 什么是反射机制?反射机制应用(Struts中反射机制的应用) 答:运行状态中,对于任意一个类,都可以知道它的所有属性和方法,对于任意一个对象都可以调用它的任意一个方法,这种动态获取信息以 ...
- Java面试题大全(四)
JAVA代码查错 1. abstract class Name { private String name; public abstract boolean isStupidName(String n ...
- 大公司的Java面试题集
找工作要面试,有面试就有对付面试的办法.以下一些题目来自我和我朋友痛苦的面试经历,提这些问题的公司包括IBM, E*Trade, Siebel, Motorola, SUN, 以及其它大小公司. 面试 ...
- 收集了50道基础的java面试题
下面的内容是对网上原有的Java面试题集及答案进行了全面修订之后给出的负责任的题目和答案,原来的题目中有很多重复题目和无价值的题目,还有不少的参考答案也是错误的,修改后的Java面试题集参照了JDK最 ...
- Java笔试题解答和部分面试题
面试类 银行类的问题 问题一:在多线程环境中使用HashMap会有什么问题?在什么情况下使用get()方法会产生无限循环? HashMap本身没有什么问题,有没有问题取决于你是如何使用它的.比如,你 ...
- 转:Java面试题集(51-70) http://blog.csdn.net/jackfrued/article/details/17403101
Java面试题集(51-70) Java程序员面试题集(51-70) http://blog.csdn.net/jackfrued/article/details/17403101 摘要:这一部分主要 ...
- JAVA面试题集之基础知识
JAVA面试题集之基础知识 基础知识: 1.C 或Java中的异常处理机制的简单原理和应用. 当JAVA程序违反了JAVA的语义规则时,JAVA虚拟机就 ...
随机推荐
- codeforces 702E Analysis of Pathes in Functional Graph 倍增
题目链接 给一个图, 然后给出每条边的权值和一个k值. 让你求出从每个点出发, 走k次能获得的边权的和以及边权的最小值. 用倍增的思想, 求出每个点走一次能到达的点, 权值和以及最小值, 走两次..四 ...
- sshd服务---暴力破解应对策略
sshd服务暴力破解步骤 sshd暴力破解方法 防止暴力破解调优 1. 变更默认端口 2. 变更root用户 3. 日志监控-->防止暴力破解(fail2ban应用) fail2ban详解 在初 ...
- Jquery remove()和empty()
要用到移除指定元素的时候,发现empty()与remove([expr])都可以用来实现.可仔细观察效果的话就可以发现.empty()是只移除了 指定元素中的所有子节点,拿$("p" ...
- JavaScript学习之—prototype
一.利用prototype扩展String方法,去除字符前后空格: String.prototype.trim = function String$trim() { if (arguments.len ...
- ab压力测试报错: apr_socket_recv: Connection reset by peer (104)
使用ab对网站进行压力测试,开始设置并发500,可以正常使用,当设置并发为1000,则报错: apr_socket_recv: Connection reset by peer (104) 改服务端a ...
- mysql主从同步错误解决和Slave_IO_Running: NO
1.出现错误提示. Slave I/O: error connecting to master 'backup@192.168.1.x:3306' - retry-time: 60 retries: ...
- Recover a file when you use git reset head by mistake.
$ git init Initialized empty Git repository in .git/ $ echo "testing reset" > file1 $ g ...
- 04737_C++程序设计_第1章_认识C++的对象
例1.1 演示使用结构对象的示例程序. //功能:将结构对象的两个域值相加,乘以2再加50 #include <iostream>//包含头文件 using namespace std;/ ...
- ASP.NET repeater添加序号列的方法
ASP.NET repeater添加序号列的方法 1.<itemtemplate> <tr><td> <%# Container.ItemIndex + 1% ...
- IOS-时间与字符串互相转换
有时会遇到这种问题,须要把时间和时间戳互相转换 比方把"这种格式 或者是把""转换成"2014-07-16 15:54:36" 首先来第一个: 当前时 ...