Java也長
A. java數組的長度到底能有多大
使用eclipse默認的vm arguments,運行以下代碼:
public static void main(String[] args) {
byte[] array=new byte[61858764];
// short[] shortArray=new short[30929382];
// int[] intArray=new int[15464691];
// long[] longArray=new long[7732345];
}
成功,沒有報錯,可知在eclipse默認的vm arguments下,byte數組的最大長度是61858764,將近60M。
由於short的長度比byte大一倍,所以short數組的最大長度是30929382,是byte數組最大長度的一半,
以此類推,int數組最大長度是15464691,long數組最大長度是7732345
我以為這就是最終結果,後來突然想起修改虛擬機的最大內存,也是這個結果嗎?
我把eclipse的vm arguments設置修改為:-Xms256M -Xmx768M
再次測試代碼,發現byte數組的最大長度可以更長,
通過Windows任務管理器可知,運行代碼的javaw.exe進程佔用的內存也更大(廢話,呵呵)
到此為止,應該可以得出結論,通過修改虛擬機的最大內存,java整型數組的最大長度可以很長,但到底有多長?(肯定比內存小)
我試過定義一個byte數組的長度為618587640,將近600M,沒有報錯,更長的數組似乎沒有意義,我也沒有測試。
B. java中長整型定義
java整型有四種分貝是:byte(1位元組)、short(2位元組)、int(4位元組)、long(8位元組)
0x100080000000超出范圍,其實不是long不能保存這么大,而是這個數是個int型數。它超出的其實是int的范圍(The literal 0x100080000000 of type int is out of range),在整數賦值時。
可以將賦值語言修改如下,指定它的類型為long型就可以了:
long y=0x100080000000l;//
(2)Java也長擴展閱讀
java整形與長整型之間的轉換可以藉助Long類或字串
1、藉助Long類:
int new_a = new Long(a).intValue();
2、藉助字串:
int new_a = Integer.parseInt(String.valueOf(y));
java整形、長整型、浮點型 邊界值:
int型邊界最大值:Integer.MAX_VALUE
int型邊界最小值:Integer.MIN_VALUE
long型邊界最大值:Long.MAX_VALUE
long型邊界最小值:Long.MIN_VALUE
float型邊界最大值:Float.MAX_VALUE
float型邊界最小值:Float.MIN_VALUE
C. 為什麼java這么火,很多年了,java一直長盛不衰,可是java內容很復雜啊,而且越來越復雜,太多東西要學
相對於兩種語言,C++的復雜體現在變數的定義有兩種模式,一種是指針,一種沒有指針,另外C++是可以對內存進行操作,需要程序對使用的內存做及時的釋放;
相比較JAVA語言,變數的定義只有一種,沒有指針的概念,其實在底層的語義封裝的時候就是C++中的指針概念,簡單的說,JAVA定義的變數都是指針,而且Java有自己的垃圾回收機制,那麼就不存在程序進行內存釋放問題。
java是面向應用的,C++是面向底層的。
從程序的開發設計角度來考慮,底層的程序需要進行切塊,各個模塊間的交互需要明確,因此C++程序往往文件大小不會太大;而應用層的程序,對於用戶來說就是實打實的功能,基於目前硬體設備的性能提升,軟體功能的應用將越來越復雜,這就導致了JAVA的內容很多很雜。
因此從這點來看,JAVA是因為應用面的廣,而導致技術的雜而多。
工資高低不看語言,先是看公司、在看崗位、在看技術
D. Java程序運行時間過長會不會報什麼異常
一般不會,除非代碼里有內存泄漏的問題,時間長了可能會出現OutOfMemory
E. Java學習時長
多久能學會Java,這個是和你目前的基礎情況、學習的方式(看視頻還是面授)、每天投入的時間相關的。如果你有Java基礎,選擇的是全日制面授課程,而且是996那種,那麼是可能在4個月學會Java並找到一份Java開發工作的;如果你是0基礎,即使是參加996的面授課,99%都是需要5-6個月才能學會的。
這是因為Java經過二十餘年的發展,學習體系非常龐大,企業對Java工程師的任職要求也在不斷提高,所以需要學習的內容是很多的。
F. Java數組的長度到底能有多大
Java整型數組的最大長度到底有多長?
今天上網查了一下,各種說法都有,這個問題似乎總困擾我們Java初學者,無奈,只好自己試了一下,以下是我的測試代碼,如果有錯誤,還望不吝賜教!
使用eclipse默認的vm arguments,運行以下代碼:
public static void main(String[] args) {
byte[] array=new byte[61858764];
// short[] shortArray=new short[30929382];
// int[] intArray=new int[15464691];
// long[] longArray=new long[7732345];
}
成功,沒有報錯,可知在eclipse默認的vm arguments下,byte數組的最大長度是61858764,將近60M。
由於short的長度比byte大一倍,所以short數組的最大長度是30929382,是byte數組最大長度的一半,
以此類推,int數組最大長度是15464691,long數組最大長度是7732345
我以為這就是最終結果,後來突然想起修改虛擬機的最大內存,也是這個結果嗎?
我把eclipse的vm arguments設置修改為:-Xms256M -Xmx768M
再次測試代碼,發現byte數組的最大長度可以更長,
通過Windows任務管理器可知,運行代碼的javaw.exe進程佔用的內存也更大(廢話,呵呵)
到此為止,應該可以得出結論,通過修改虛擬機的最大內存,java整型數組的最大長度可以很長,但到底有多長?(肯定比內存小)
我試過定義一個byte數組的長度為618587640,將近600M,沒有報錯,更長的數組似乎沒有意義,我也沒有測試。
ps:以上測試,我只是定義這么長的數組,並沒有對這些數組進行操作, 所以不敢保證實際操作數組時不報錯(我偷懶了)
而且,我只是對整型數組進行測試,沒有對其他類型數組測試,不敢保證其他類型數組是否也符合這個結論 (又偷懶了)
如果有錯誤,希望大家指出來,不要客氣!
G. Java安裝很慢,而且時間顯示的越來越長,我下的是適用於windows的Java
試試這個吧,這個是1.6的,現在建議最好用1.6不用1.7,希望能幫到你~
H. Java是什麼
簡言之,Java環境可用來開發能在任何計算平台上運行的應用
軟體。它實際上是一種非常基本且結構緊湊的技術,而它對World
Wide Web以及商業的總體影響已可同電子表格對PC機的影響相比
擬。
Java是巨大的推動力量
Java已用動態的交互應用軟體使Web栩栩如生。它使開發人員
具有『編寫一次到處運行TM」的巨大能力。而且,藉助其JavaAPI
及其編程語言上的Java虛擬機,它已產生一種分布信息的嶄新模式。
這種模式叫做Java企業計算,正在幫助各企業以各種不同的方法取
得競爭優勢。網管和控制已大大簡化。軟體分配基本上是免費的,
而且立即可實現。電子貿易已獲得。佔有成本大幅度降低。信息和
應用軟體到處可存取。
Java建立在簡單的前提基礎上,即所有微處理器都應講同一種
語言??所有內部採用晶元的產品都應能一起工作,無縫而方便地
共享信息。它已經改變企業和個人同Internet大交道的方式。現在,
它正在對消費類產品產生明顯的影響,而且從總體上更加深刻地影
響企業計算。
藉助Java,您可自由自在地使用您已擁有的硬體和軟體。這是因
為Java是獨立於平台的。它還可使您超越企業計算,使應用軟體在便
攜式計算機、信息亭、電視、蜂窩電話和其他大量設備上運行。
全世界的公司都已發現Java數不勝數的用途。所有用途可從其無
可比擬的能力,即提高可靠性、安全性和簡化各種不同計算產品和
環境的能力中受益非淺,而且節省的時間和費用十分可觀。
Java無處不在。它已擁有幾百萬個用戶,其發展速度要快於在它
以前的其他任何一種計算機產品。它可位於任何地方,而且能到處運
行。Java正在迅速被用做傳播信息的事實上標准,這是因為它既可給
企業,也可給最終用戶帶來似乎數不清的好處。
因此,請您仔細考察一下Java。它的優點是很容易發現的。
「Java正在進入企業、家庭和學校。
它正在象Internet本身一樣成為普遍存在的技術。」
Oracle 公司董事長和首席執行官
Larru Ellison
「Java正在改變我們使用Internet的方法,改變我們
在公司內部存取信息的方法,甚至改變我們使用蜂窩
電話的方法。它正在從根本上改變製作信息、銷售信息
和分配信息的方法。」
EarthWeb公司董事長和首席執行官
Jack Hidary
Java的來龍去脈
Sun公司一小組工程師聚集在一起,認真思考日常生活中的
數字系統??因為烤麵包機、恆溫器、游戲機和其他無數設備
都包含越來越復雜的CPU??以及他們如何能使這些數字系統
共享信息。
創造未來的計算
製造產品的人當然全都從不同的方面來考慮其設計,視他們
所使用的硬體平台、操作系統和應用軟體而定。但是,如果您要
使這些產品中的一些產品一起工作,那怎麼辦?安全性、可靠性
和網路問題又這么樣呢?
因此,Sun公司這些工程師把各種不同的產品折開來,然後又
把它們重新組裝起來,其目標是要使這些不同的設備相互交談。
他們把這些研究對象相互傳來傳去,並理解所有其他研究對象的
特性,以便使他們能更好地一起工作。這就把製造商的問題縮減
到最低程度,並使消費者能方便地進行集成。當傳統的語言證明
是不適用時,工程師們就打算找到某種簡單的現代新語言。於
是, Java應運而生。
人們很快發現,Java有可能超越工程師的想像。Java的魅力在
於它提供給開發人員和用戶的簡便性。開發人員擁有廣大的用戶基
礎、平台獨立性、降低的開發費用和始終如一的執行環境,而用戶
則可 從生動的內容、即時軟體和增大的安全性中受益。
但是,Java正是從置於World Wide Web那時起才真正起飛。Java
使全世界大為震動,因為它使Web頁面栩栩如生,而且不久變得很明
顯,Java擁有大得多的潛力。人們之所以採納Java,是因為它有獨特
的能力來編制和部署能在任何一個網路、任何一個操作系統上運行的
應用軟體。分配軟體的時間和費用實際上已不復存在,使得各公司可
把更多的資源用來開發其產品。而且,某些工業專家認為,Java可能
會改變軟體銷售模式,從固定價格改變為按使用量收費,這樣做更有
利可圖,而且可阻止非法盜版。
Java是一種網路計算的通用開放標准平台。這種平台可從電話一
直擴展到極端重要的應用,建立在您現有的硬體和軟體體系結構基礎
上,從而創造出一個全部聯網的企業或者製造出超出的創新產品。
「由於Java具有可縮放性,因而我們可以把Java應用於小應
用軟體或大應用軟體,把它晶元組以及大型計算機和伺服器,並
使它為各種不同的應用領域服務。」
三菱公司系統營銷副總裁
Steve Hester
「藉助Java,您可以用一種能最有效地使用的方式動態地分
發和分配互動式商務應用軟體一一在需要運行應用軟體的地方,
在需要運行應用軟體的時候。」
Novell公司開發者服務部副總和總經理
Gary Mueller
Java紮下根來
在某種意義上,Java具體體現了Sun Microsystiems公司自其14年
前創建以來所追述的目標。當時,它創造了「網路就是計算機」這局名
言。它市基於Web的新網路計算模式的完美平台,因為它建立在各個
組織現有的硬體和軟體體系結構基礎上,能建立一個全部聯網的企業。
Java是一個完整而全面的解決方案
Java遠不止是一種編程語言,它是企業內外的完整計算環境,而
且萬事齊備,從開發工具、操作系統、伺服器軟體和瘦/肥客戶機一
直到網路管理工具、支持、培訓、咨詢和集成服務,一應俱全。Java
使用起來非常簡單,部分原因是Sun提供一種全面統一的解決方案。
主要組成部分包括:
*Java開發工具和服務:有助於簡化開發Java應用軟體的產品和
服務
*JavaOS:一種結構緊湊的操作系統,可使Java應用軟體在網路
計算機和蜂窩電話等設備上運行
*Java虛擬機:一層軟體,嵌入Windows、Macintosh和UNIX等計
算機操作系統,或在這些操作系統上運行,從而使計算機能
運行Java應用軟體
*Java API:標准軟體界面,位於Java應用軟體和資料庫檢索和
安全性等服務軟體之間
*Java晶元:一系列為Java優化的為處理器
*Solstice WorkShop:Java啟動的網路管理工具
*Java培訓:一個由教師指導和基於多媒體的完整課程,教會編
程員如何開發Java應用軟體,包括一個用來驗證熟練程度的
認證計劃
*JavaWorkShop支持:900號電話服務,可為Java WorkShop用戶
(僅限美國用戶)立即提供按需支持
這些產品依靠由Sun的核心技術和服務提供的基礎,包括:
*Solaris操作系統
*Sikstuce企業管理系統
*WorkShop開發者工具
*SunSpectrum支持服務
*Internet咨詢和集成服務
*Java和Internet教育服務
*ultra工作站和Ultra Enterprise伺服器;Netra伺服器
難怪大公司和日益增多的全球2000公司正在把Java計算用做系統以及
其終產品的主要方面。
「您不會把您自己鎖住在任何一家公司的專有技術中。
開放意味著選擇。而Java使您有選擇餘地。」
Java改變了什麼
&nbs
p; 十年前,幾乎沒有人想到,幾個技術人員研發的一個「小語言」,會發展成如今的一個「生態圈」,這就是Java。
Java讓互聯網動了起來
「計算機語言的發展歷史也是人們不斷追求更高的模塊化、抽象化和封裝化的歷史。近十年期間,很多編程語言,從出現到沒落經過了一波又一波。像1970年代出現的Pascal,如今用的人已經不多了。」一位資深程序員告訴記者,「『演算法+數據結構=程序』幾乎成為軟體開發的惟一準則,結構化程序設計方法從計算機發展角度來看是自然而然的,但今天從抽象的角度來看,這種方法幾乎可以說是一個『時代錯誤』。實際上,軟體開發的主要目的就是描述和反映現實世界,結構化程序設計方法並不符合這個思維方式。」
因此,抽象的過程應該是以現實世界的對象為中心的,於是面向對象的抽象方法就走到了前台,出現了Visual Basic、Delphi、C++以及Java等面向對象的編程語言,而互聯網的勃興,則給Java的成長帶來了肥沃的土壤。
「Java誕生時並沒有引起太多人的注意,它第一次讓人們覺得驚艷是在一次網站演示上,但當時人們對Java還抱有很大的爭議。」被譽為「Java之父」的SUN公司副總裁、軟體部首席技術官James Gosling回憶起十幾年前的情景不無感慨地說,「但Java的出現為當時的互聯網增添了生機,它讓那些靜態的頁面動了起來。」
而且,因為Java具有「只寫一次,隨處運行」的特點,從而引起了更多開發者的興趣。
「我們可以不必再做重復性質的勞動了。」中國科學院軟體研究所宋靖宇博士說,「此前,為了能夠使程序在不同型號的硬體平台上運行,開發人員必須耗費大量的時間來一遍又一遍的編寫代碼,然而Java改變了這樣的局面,只寫一次就可以。」
由於看到Java在互聯網時代的巨大作用,清華大學計算機系教授王克宏從1995年就開始跟蹤Java的發展。
Java語言的優勢似乎是與生俱來的,然而,僅有語言是不夠的。
免費的Java創造了應用奇跡
「為了提高軟體開發效率,任何編程語言都離不開相應的開發工具和程序庫。」王克宏說。於是,SUN公司在1996年的1月23 日發布了JDK1.0,其中包括兩個部分:運行環境和開發工具,運行環境包括五大部分:核心API、集成API、用戶界面API、發布技術和Java虛擬機。
隨著各種功能的完善與提煉,各種Java開發工具以及開發環境的豐富,Java不再是一種語言的代名詞,它變成了一種開發平台。人們常常聽到的J2EE(企業版)、J2ME(微型版)、J2SE(標准版)就是Java的三大核心平台。利用這三種不同的平台,人們可以來做不同行業的應用。
SUN公司大中華區總裁余宏德說:「Java經過十年的發展,已經得到了全球的公認,可以說,當今的電子時代是『Java無處不在』,正是基於它一開始的技術公開性,Java已經變成全球最富有活力的技術社區之一。」
盡管,Java目前已經風靡全世界,但Java 到底給整個產業帶來什麼,除了Java程序員外,似乎沒有人能具體感覺到。
SUN中國區市場經理馬君海比喻說:「電燈的發明,使得有了現在龐大的電力產業;電話的發明,使得有了當今興旺的電信產業;而Java的發明,則給軟體產業帶來了前所未有的改變。」
像一切新興事物一樣,Java的發展並不那麼順利,其坎坷起步的經歷,可以從SUN首席執行官Scott McNealy在SUN的Java One大會上的一句話得知一二:「七八年前的Java One演說現在聽起來真是寒磣,我們那時實在是太小看它了,我們根本不知道這項技術將會改變什麼。」而且,由於開始就是基於開源的態度,當時很多人懷疑它是否能賺錢。
然而,今天的Java已經得到廣泛應用。
據全球市場調查分析顯示:已經有25億部電子設備採用了Java技術,Java智能卡發行量已經達到10億張,採用Java技術的手機達7億多部,7億台PC中應用了Java技術,140家電信運營商支持Java 技術,全球有超過450 萬個Java開發人員,JCP(Java社區項目)已經有912家會員企業。
如果沒有Java,SUN將會怎樣
從1997年4月6日美國舊金山的第二屆Java One大會,到今年的Java十周年盛事,本報目睹了Java 十年的風風雨雨,眼瞅著這個以「咖啡」命名的小小編程語言變成了一個平台,一個社團,一個生態系統。Java不僅發展了自己,也同時改變了它的締造者。Java對SUN的改變是間接的、漸進式的,有時候甚至不為外人所道也。
與平台無關的Java旨在與「鎖定用戶的」Windows相抗衡,給人們更多的選擇,但推動Java研發的卻是家硬體公司――硬體公司與微軟抗個什麼衡?也許有人會拿IBM做類比――IBM也大量涉足軟體。問題在於,IBM涉足軟體的結果是把自己變成了一個軟體和服務公司,而SUN的主業依然是伺服器。表面上看,「純軟」的Java並沒有給「偏硬」的SUN帶來直接效益,反而樹了個強大的敵人,這就是並不「軟」的微軟。
同時,盡管SUN對Java的投資巨大,卻從沒說過它從Java中獲得過多少回報。因為使用Java程序和開發工具包是免費的,這讓那些利用Java做第三方開發的ISV們賺了個缽滿盆滿,可是SUN得到了什麼?當然,Java作為高級編程語言,它的注冊和維護也能給SUN帶來一定收入,但這是一個小頭,有人比喻說:「SUN成了Java的管家,而不是主人。」
SUN大中華區市場總監李永起近日為記者揭開了Java與SUN的秘密:「如果SUN只是一個做伺服器的公司,人們就不會對我們太感興趣,但有了Java,就大不一樣了,人們會跑過來與我們討論Java,人們會說:『哦,能研發出Java這么棒的編程語言的公司一定不同凡響!』況且,伺服器的銷售從來就不是孤立的,它體現為一個系統,Java在硬體銷售中發揮了關鍵作用。」SUN用 Java來定位Web服務,發揮其多平台對話的特長,營造Web服務環境。
Internet讓Java復活,Java則拯救了曾經陷入「偏硬」困境中的SUN。
SUN董事長麥克尼里認為:Java帶來的益處從根本上講是間接的。「但是,」他說,「想像一下,如果10年前SUN沒有做Java,今天SUN將會在哪裡?如果人們不寫Java Web服務,他們會寫.Net的程序,如果他們寫.Net的程序,他們就不會為SUN的設備寫程序。」
.NET不折不扣的對手
近年來,國內一批軟體公司都採用Java技術開發了一批軟體平台和產品,這兩年Java在國內得到了迅速發展。不過,盡管看起來Java的隊伍似乎很強大,但國內Java人才相對而言還是少得可憐。
「SUN在新加坡建立了Java高級培訓中心,目前新加坡有5萬名Java 人才,而新加坡全國只有380萬人,即全國1.3%的是Java人才,如果按此比例,中國應有1700萬名Java人才,而現在估計僅10到15萬人。」王克宏教授在相關的報告中寫道,「造成國內Java應用不多的原因是多方面的。」
「這兩年SUN才開始在中國舉辦各種活動,而許多媒體對Java的不關注也是其中一個原因。」王克宏說。
「其實,鑒於Java出來時總給人陽春白雪的面孔,使得國內的許多編程者在熟悉了微軟的開發平台後,很難轉換過來是其中的一大部分原因。」宋靖宇博士說,「你不得不承認微軟在開發工具上的人性化以及可視化設計是高超的。」
「在討論 Java 的時候我們很容易將 Java 語言和 Java 平台混為一談,與.NET 平台比較的過程中,也更多的是將Java平台和C#比較,或者將Java語言和.NET 平台做比較,在我個人的意識中,這是不夠公正的。」上海大學博士劉錟對記者說,「Java既是一種語言,也是一種平台。」
說到微軟的.NET,它從提出的開始就是立足平台,相對於 Java 提倡的「一次編寫,到處運行」,.NET則提倡「一個平台,多種語言」,因為平台的統一性,因此在各個程序語言的兼容性和混合開發方面做得比Java 好,也因此有些微軟的「粉絲」嘲笑Java是「一次編寫,到處調試」。
「微軟的C#是集合了C以及C++甚至Java的許多優點的結晶,在Windows平台上,似乎C#在運行速度上更勝一籌。」劉錟介紹說,「在任何一個平台上,我們直接交流的是實現Java語言運行的虛擬機,我們希望Java在虛擬機以及它的開發平台的研發上變得更易用、更人性化。」
「有對手總是一件不算壞的事情,這個世界不需要『獨孤求敗』,商業規則也不允許『獨孤求敗』的出現,因為那樣會打破競爭格局的平衡,而Java和.NET這兩個平台的紛爭才剛剛開始。較量,有利於整個軟體世界。SUN公司在商業模式的運作上甚至可以跟微軟學習。」一網友這樣說。
I. Java數組的長度到底能有多大
其實沒有這種說法, 數組的長度是 int類型 取值是 20多億吧
而真正的長度取決於你的JVM大小
你不可能創建20億長度的數組
因為這里已經佔用好幾個G的內存了,你電腦也沒有這么大的內存