含有main()方法的類稱為主類
文件名(.java文件)必須和主類名相同
pakage xxx 為聲明該類所在的包xxx
import 導(dǎo)入包 可通過JDK的API文檔查看
基本數(shù)據(jù)類型:
byte(8bit) short(16) int(32) long(64) float(32) double(64) char(16bit) boolean(8)
long
若long賦值的值大于int的范圍則需在其后加L或l eg.long a = 123456789456L
float double
聲明float時(shí)若數(shù)字后不加f則會被認(rèn)為是double類型,報(bào)錯(cuò)。聲明double時(shí)可加可不加d
聲明常量
final 數(shù)據(jù)類型 常量名稱[=值]
Java中static是什么意思,有什么作用?
1. 靜態(tài)方法 通常,在一個(gè)類中定義一個(gè)方法為static,那就是說,無需本類的對象即可調(diào)用此方法
聲明為static的方法有以下幾條限制:
. 它們僅能調(diào)用其他的static 方法。
· 它們只能訪問static數(shù)據(jù)。 · 它們不能以任何方式引用this 或super。
調(diào)用一個(gè)靜態(tài)方法就是“類名.方法名”,靜態(tài)方法的使用很簡單如上所示。一般來說,靜態(tài)方法常常為應(yīng)用程序中的其它類提供一些實(shí)用工具所用,在Java的類庫中大量的靜態(tài)方法正是出于此目的而定義的。此類方法,不需要?jiǎng)?chuàng)建對象。
2. 靜態(tài)變量
聲明為static的變量實(shí)質(zhì)上就是全局變量。當(dāng)聲明一個(gè)對象時(shí),并不產(chǎn)生static變量的拷貝,而是該類所有的實(shí)例變量共用同一個(gè)static變量。靜態(tài)變量與靜態(tài)方法類似。所有此類實(shí)例共享此靜態(tài)變量,也就是說在類裝載時(shí),只分配一塊存儲空間,所有此類的對象都可以操控此塊存儲空間,當(dāng)然對于final則另當(dāng)別論了
3.靜態(tài)類
通常一個(gè)普通類不允許聲明為靜態(tài)的,只有一個(gè)內(nèi)部類才可以。這時(shí)這個(gè)聲明為靜態(tài)的內(nèi)部類可以直接作為一個(gè)普通類來使用,而不需實(shí)例一個(gè)外部類。
4.static和final一塊用表示什么
static final用來修飾成員變量和成員方法,可簡單理解為“全局常量”!
對于變量,表示一旦給值就不可修改,并且通過類名可以訪問。
對于方法,表示不可覆蓋,并且可以通過類名直接訪問。
位運(yùn)算符
&按位與 |按位或 ~按位取反 ^按位異或 >>>無符號右移
>>(如果最高位是1,右移的空位就補(bǔ)1 ; 0則補(bǔ)0)
>>>(無論最高位是1\0,最高位都補(bǔ)0)
順序執(zhí)行語句
switch語句中的的值除了為整形或字符外,還可以為字符串
for( int x : arr) { } == python中的 for x in arr :
String類
需 import java.lang.*;
1.創(chuàng)建字符串
String a = 'abc';
char a[] ={'g','o','o','d'}; String s = new String(a);
String s = new String(a,2,4);
2.字符串連接
用+進(jìn)行連接
當(dāng)用+進(jìn)行非字符串類型連接時(shí),系統(tǒng)會自動調(diào)用toString()方法讓其變成字符串
3.獲取字符串的信息
str.length()
str.indexOf(substr)
str.lastIndexOf(substr)
str.charAt(int index)
str.substring(int beginIndex) str.substring(int beginIndex,int endIndex)
str.trim() //去除前導(dǎo)空格和尾部空格
str.replace(char oldChar,char newChar)
str.startsWith(String prefix) //判斷前綴是否為prefix 返回boolean
str.endsWith(String suffix)
4.比較字符串是否相等
錯(cuò)誤示范:String tom = new String("a") String lily = new String("a")
boolean b = (tom = lily)
會返回false 原因是tom、lily是引用,地址值不同
要比較需要用:
str.equals(String otherstr) //區(qū)分大小寫 返回boolean
str.equalsIgnoreCase(String otherstr) //不區(qū)分大小寫 返回boolean
str.compareTo(String otherstr) //按字典順序比較兩個(gè)字符串 返回0,1,-1
5.字母大小寫轉(zhuǎn)換
str.toLowerCase()
str.toUpperCase()
6.字符串分割
str.split(String sign) //返回一個(gè)字符串?dāng)?shù)組 sign為分割字符串的分隔符,也可以使用正則表達(dá)式
若想定義多個(gè)分隔符,可以使用符合'|' ,如 “,|=”表示分割符分別為,和=
str.split(String sgn,int limit) //限制分割的次數(shù)