三十一.如何取小數點前兩位,並四捨五入。 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)); } }
三十3、如何喚起類中的一個方法? spa
三步: code
1.產生一個Class數組,說明方法的參數(獲得參數的類模板數組,用以解決有方法重載的狀況)。 orm
2.經過Class對象及方法參數獲得Method(獲得須要喚醒的方法)。 對象
3.經過method.invoke(實例,參數值數組)喚醒方法(喚醒方法)。 ci