String是固定長度,一但建立就不可以更改他的值,如果不斷的用+,會大量的消耗資源,
如果是會經常改變的字串最好不要用String,用多了會容易對系統產生影響,
最好使用StringBuilder和StringBuffer,
但StringBuilder和StringBuffer 雖然提供了相同的介面,
然而在不需考量多執行緒同步的時候我們使用StringBuilder來獲得最佳的效率,
String是固定長度,一但建立就不可以更改他的值,如果不斷的用+,會大量的消耗資源,
如果是會經常改變的字串最好不要用String,用多了會容易對系統產生影響,
最好使用StringBuilder和StringBuffer,
但StringBuilder和StringBuffer 雖然提供了相同的介面,
然而在不需考量多執行緒同步的時候我們使用StringBuilder來獲得最佳的效率,
java.lang有將基本型態轉成物件就能擁有屬性及行為
primitive type (基本型態) | wrapper classes(包裝類別) |
long | Long |
int | Integer |
short | Short |
byte | Byte |
double | Double |
float | Float |
boolean | Boolean |
static:
只能放在屬性(Variable)或方法(Method),只會初始化一次
特性一:永遠會是一個唯一值!!JVM只為靜態分配一次記憶體
特性二:static可以透過類別直接存取使用!
static method
- 封裝(Encapsulation)
- 將Class裡的屬性用private隱藏,只能透過public的方法存取資料
(隱藏程式細節,避免直接處理造成的困擾)
- 繼承(Inheritance)
- 提高軟體的重複使用性
Modifier | Same Class | Same Package | Subclass | Universe |
public | V | V | V | V |
protected | V | V | V | |
default | V | V | ||
private | V |
用於生成字串物件的String類別擁有幾個操作字串的方法:
length() | 取得字串的字元長度 |
equals() | 判斷原字串中的字元是否相等於指定字串中的字元 |
toLowerCase() | 轉換字串中的英文字元為小寫 |
toUpperCase() | 轉換字串中的英文字元為大寫 |
後置型(i++):先取值之後再遞增
前置型(++i):先遞增之後再取值
abstract | continue | for | new | switch |
assert | default | goto | package | synchronized |
boolean | do | if | private | this |
break | double | implements | protected | throw |
byte | else | import | public | throws |
case | enum | instanceof | return | transient |
catch | extends | int | short | try |
char | final | interface | static | void |
class | finally | long | strictfp | volatile |
const | float | native | super | while |
Java 資料型態 | Hibernate 資料型態 | 標準SQL資料型態 |
byte、java.lang.Byte | byte | TINYINT |
short、java.lang.Short | short | SMALLINT |
int、java.lang.Integer | integer | INGEGER |
long、java.lang.Long | long | BIGINT |
float、java.lang.Float | float | FLOAT |
double、java.lang.Double | double | DOUBLE |
java.math.BigDecimal | big_decimal | NUMERIC |
char、java.lang.Character | character | CHAR(1) |
boolean、java.lang.Boolean | boolean | BIT |
java.lang.String | string | VARCHAR |
boolean、java.lang.Boolean | yes_no | CHAR(1)('Y'或'N') |
boolean、java.lang.Boolean | true_false | CHAR(1)('Y'或'N') |
java.util.Date、java.sql.Date | date | DATE |
java.util.Date、java.sql.Time | time | TIME |
java.util.Date、java.sql.Timestamp | timestamp | TIMESTAMP |
java.util.Calendar | calendar | TIMESTAMP |
java.util.Calendar | calendar_date | DATE |
byte[] | binary | VARBINARY、BLOB |
java.lang.String | text | CLOB |
java.io.Serializable | serializable | VARBINARY、BLOB |
java.sql.Clob | clob | CLOB |
java.sql.Blob | blob | BLOB |
java.lang.Class | class | VARCHAR |
java.util.Locale | locale | VARCHAR |
java.util.TimeZone | timezone | VARCHAR |
java.util.Currency | currency | VARCHAR |