java的一些問題

来源:http://www.cnblogs.com/z360519549/archive/2017/07/09/7140378.html
-Advertisement-
Play Games

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.p ...


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

void java.io.PrintStream.println(String x)

Prints a String and then terminate the line. This method behaves as though it invokes print(String) and then println().

 

System.out.println(numbers);  輸出:123

void java.io.PrintStream.println(char[] x)     重載的方法

Prints an array of characters and then terminate the line. This method behaves as though it invokes print(char[]) and then 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 

String java.lang.String.replace(CharSequence target, CharSequence replacement)

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

String java.lang.String.replaceAll(String regex, String replacement)

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數。

java.lang.StringBuffer.StringBuffer(int capacity)

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 ,再增加會變成負數。
}

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • Redis主從架構持久化存在一個問題,即前次測試的結論,持久化需要配置在主實例上才能跨越實例保證數據不丟失,這樣以來主實例在持久化數據到硬 盤的過程中,勢必會造成磁碟的I/O等待,經過實際測試,這個持久化寫硬碟的過程給應用程式帶來的影響無法忍受;因而在大多數場景下,會考慮把持久化配置 在從實例上,當 ...
  • Redis的複製功能是完全建立在之前我們討論過的基於記憶體快照的持久化策略基礎上的,也就是說無論你的持久化策略選擇的是什麼,只要用到了redis的複製功能,就一定會有記憶體快照發生,那麼首先要註意你的系統記憶體容量規劃,原因可以參考我上一篇文章中提到的Redis磁碟IO問題。 Redis複製流程在Slav ...
  • 那點所謂的分散式——redis 日常開發中,總會接觸到一些好玩的東西,比如這篇的redis,一說到redis,可能就有人跟memcache做比較了,是呀, memcache只能說是簡單的kv記憶體數據結構,而redis支持的數據類型就豐富多了,當然最能讓人看上眼的就是SortedSet。 有了它,我們 ...
  • NoSQL簡介 介紹Redis前,我想還是先認識下NoSQL,即not only sql, 是一種非關係型的數據存儲,key/value鍵值對存儲。現有Nosql DB 產品: redis/MongoDB/Memcached/Hbase/Cassandra/ Tokyo Cabinet/Voldem ...
  • SQL Server 是Microsoft 公司推出的關係型資料庫管理系統。具有使用方便可伸縮性好與相關軟體集成程度高等優點,可跨越從運行Microsoft Windows 98 的膝上型電腦到運行Microsoft Windows 2012 的大型多處理器的伺服器等多種平臺使用。Microsoft ...
  • [root@localhost ~]# yum install -y mysql-server mysql mysql-devel [root@localhost ~]# service mysqld start mysql> grant all privileges on *.* to 'root ...
  • 一.文件系統概述 1.文件系統是基於操作系統的,用來管理和組織保存在磁碟驅動器上的數據的系統軟體,通過對數據存儲佈局/空間管理/文件命名/安全控制等 方面的管理,解決瞭如何在設備上有效的存儲數據。 2.文件系統是操作系統與磁碟設備之間交互的一個橋梁,通過文件系統實現了數據合理組織和有效存取,表現在操 ...
  • pwd print working directory 列印工作目錄hostname my computer's network name 電腦在網路中的名稱mkdir make directory 創建路徑cd change directory 改變路徑ls list directory 列出路徑... ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...