///
/// 子元素順序類型
///
public SubElementType SubTypeType = SubElementType.AscOrder;
// 1. 定義枚舉
public enum SubElementType {
AscOrder, // 升序/固定順序
Combination, // 組合:A為首,其餘任意
DisOrder // 無序/任意
}
// 2. 在類別中聲明欄位(Java 無屬性語法,用私有欄位+Getter/Setter)
private SubElementType subTypeType = SubElementType.AscOrder;
public SubElementType getSubTypeType() { return subTypeType; }
public void setSubTypeType(SubElementType subTypeType) { this.subTypeType = subTypeType; }
| C# | Java | 說明 |
|---|---|---|
public enum E { A, B } | public enum E { A, B } | 語法幾乎相同 |
public int Prop { get; set; } | private int prop; public int getProp() {...} public void setProp(int v) {...} | Java 用 Getter/Setter |
public List<string> List { get; set; } | private List<String> list = new ArrayList<>(); | 建議初始化避免 NPE |
Dictionary<K, V> | Map<K, V> (HashMap/TreeMap) | 介面導向 |
struct | class (或 record Java 14+) | Java 無值型別,用不可變類別替代 |
// C# 原始
public class UnitScalarTypeRelation {
public string ReturnType { get; set; }
public SubElementType SubTypeType = SubElementType.AscOrder;
public List<string> UnitParaType { get; set; }
}
// Java 目標
public class UnitScalarTypeRelation {
private String returnType;
private SubElementType subTypeType = SubElementType.AscOrder;
private List<String> unitParaType = new ArrayList<>();
public String getReturnType() { return returnType; }
public void setReturnType(String returnType) { this.returnType = returnType; }
public SubElementType getSubTypeType() { return subTypeType; }
public void setSubTypeType(SubElementType subTypeType) { this.subTypeType = subTypeType; }
public List<String> getUnitParaType() { return unitParaType; }
public void setUnitParaType(List<String> unitParaType) { this.unitParaType = unitParaType; }
}
工具推薦:C# 轉 Java 線上對照表,大型專案可嘗試 Sharpen (Eclipse 外掛) 自動轉換。