คำถามติดแท็ก enums

ชนิดข้อมูลประกอบด้วยชุดของค่าที่กำหนดชื่อเรียกว่าองค์ประกอบสมาชิกหรือตัวแจงนับของชนิด


6
จะสร้าง enum like type ใน TypeScript ได้อย่างไร?
ฉันกำลังทำงานกับไฟล์คำจำกัดความสำหรับ Google maps API สำหรับ TypeScript และฉันต้องกำหนด enum เช่นประเภทเช่น google.maps.Animationซึ่งประกอบด้วยสองคุณสมบัติ: BOUNCEและDROP. สิ่งนี้ควรทำอย่างไรใน TypeScript
121 enums  typescript 

6
การทำงานกับ Enums ใน Android
ฉันเกือบจะเสร็จสิ้นกับกิจกรรมการคำนวณที่ฉันกำลังทำงานใน Android สำหรับแอปของฉัน ฉันพยายามสร้าง Gender Enum แต่ด้วยเหตุผลบางประการที่ทำให้เกิดข้อผิดพลาดทางไวยากรณ์ให้ใส่ "EnumBody" เพื่อกรอก EnumDeclaration public static enum Gender { static { Female = new Gender("Female", 1); Gender[] arrayOfGender = new Gender[2]; arrayOfGender[0] = Male; arrayOfGender[1] = Female; ENUM$VALUES = arrayOfGender; } } ฉันได้ลองใช้โดยไม่คงที่ {} แต่ฉันได้รับข้อผิดพลาดทางไวยากรณ์เดียวกัน
120 android  enums 

13
แปลง enum เป็น enum ประเภทอื่น
ฉันมี enum ของตัวอย่างเช่น ' Gender' ( Male =0 , Female =1) และฉันมี enum อื่นจากบริการที่มี Gender enum ( Male =0 , Female =1, Unknown =2) ของตัวเอง คำถามของฉันคือฉันจะเขียนสิ่งที่รวดเร็วและดีในการแปลงจาก enum เป็นของฉันได้อย่างไร
120 c#  enums 

16
ทำไม Python 3.6.1 ถึงพ่น AttributeError: module 'enum' จึงไม่มีแอตทริบิวต์ 'IntFlag'
ฉันเพิ่งติดตั้ง Python 3.6.1 สำหรับ MacOS X เมื่อฉันพยายามเรียกใช้ Console (หรือรันอะไรก็ตามด้วย Python3) ข้อผิดพลาดนี้จะเกิดขึ้น: AttributeError: module 'enum' has no attribute 'IntFlag' $ /Library/Frameworks/Python.framework/Versions/3.6/bin/python3 Failed to import the site module Traceback (most recent call last): File "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py", line 544, in <module> main() File "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py", line 530, in main known_paths = addusersitepackages(known_paths) File "/usr/local/Cellar/python3/3.6.1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site.py", line …

20
วิธีแมป c ++ enums กับสตริงได้อย่างง่ายดาย
ฉันมี enum หลายประเภทในไฟล์ส่วนหัวของไลบรารีบางไฟล์ที่ฉันใช้และฉันต้องการมีวิธีการแปลงค่า enum เป็นสตริงผู้ใช้ - และในทางกลับกัน RTTI จะไม่ทำเพื่อฉันเพราะ 'สตริงผู้ใช้' ต้องอ่านได้มากกว่าการแจงนับเล็กน้อย โซลูชันกำลังเดรัจฉานจะมีฟังก์ชันมากมายเช่นนี้ แต่ฉันรู้สึกว่ามันเหมือน C มากเกินไป enum MyEnum {VAL1, VAL2,VAL3}; String getStringFromEnum(MyEnum e) { switch e { case VAL1: return "Value 1"; case VAL2: return "Value 2"; case VAL1: return "Value 3"; default: throw Exception("Bad MyEnum"); } } ฉันรู้สึกว่ามีวิธีแก้ปัญหาที่สวยงามโดยใช้เทมเพลต แต่ฉันยังไม่สามารถปัดหัวได้ อัปเดต:ขอบคุณสำหรับคำแนะนำ …
119 c++  templates  enums 

13
วิธีที่ดีที่สุดในการกำหนดรหัส / สตริงข้อผิดพลาดใน Java?
ผมเขียนบริการเว็บใน Java และฉันกำลังพยายามที่จะคิดออกวิธีที่ดีที่สุดในการกำหนดรหัสข้อผิดพลาดและสตริงข้อผิดพลาดที่เกี่ยวข้อง ฉันต้องมีรหัสข้อผิดพลาดที่เป็นตัวเลขและสตริงข้อผิดพลาดที่รวมกลุ่มกัน ทั้งรหัสข้อผิดพลาดและสตริงข้อผิดพลาดจะถูกส่งไปยังไคลเอนต์ที่เข้าถึงบริการเว็บ ตัวอย่างเช่นเมื่อเกิด SQLException ฉันอาจต้องการทำสิ่งต่อไปนี้: // Example: errorCode = 1, // errorString = "There was a problem accessing the database." throw new SomeWebServiceException(errorCode, errorString); โปรแกรมไคลเอ็นต์อาจแสดงข้อความ: "เกิดข้อผิดพลาด # 1: มีปัญหาในการเข้าถึงฐานข้อมูล" ความคิดแรกของฉันคือการใช้Enumรหัสข้อผิดพลาดและแทนที่toStringวิธีการในการส่งคืนสตริงข้อผิดพลาด นี่คือสิ่งที่ฉันคิดขึ้น: public enum Errors { DATABASE { @Override public String toString() { return "A database error has …
118 java  enums 

10
คุณส่งผ่านค่า enum หลายค่าใน C # ได้อย่างไร
บางครั้งเมื่ออ่านรหัส C # ของผู้อื่นฉันเห็นวิธีการที่จะยอมรับค่า enum หลายค่าในพารามิเตอร์เดียว ฉันคิดเสมอว่ามันดูเรียบร้อย แต่ไม่เคยมองเข้าไปในนั้น ตอนนี้ฉันคิดว่าฉันอาจต้องการมัน แต่ไม่รู้จะทำอย่างไร ตั้งค่าลายเซ็นวิธีการเพื่อยอมรับสิ่งนี้ ทำงานกับค่าในวิธีการ กำหนด enum เพื่อให้บรรลุสิ่งนี้ ในสถานการณ์เฉพาะของฉันฉันต้องการใช้ System.DayOfWeek ซึ่งกำหนดเป็น: [Serializable] [ComVisible(true)] public enum DayOfWeek { Sunday = 0, Monday = 1, Tuesday = 2, Wednesday = 3, Thursday = 4, Friday = 5, Saturday = 6 } ฉันต้องการส่งผ่านค่า DayOfWeek อย่างน้อยหนึ่งค่าไปยังเมธอดของฉัน ฉันจะสามารถใช้ …
117 c#  enums 

3
ตรวจสอบว่าประเภทที่ระบุเป็น Enum หรือไม่
ฉันกำลังเขียน JsonConverter สำหรับ Json.NET ซึ่งควรอนุญาตให้ฉันแปลง enum ใด ๆ เป็นค่าสตริงที่กำหนดโดยแอตทริบิวต์ [Description] ตัวอย่างเช่น: public enum MyEnum { [Description("Sunday")] Sunday, [Description("Monday")] Monday, [Description("Tuesday")] Tuesday, [Description("Wednesday")] Wednesday, [Description("Thursday")] Thursday, [Description("Friday")] Friday, [Description("Saturday")] Saturday } ฉันมีรหัสสำหรับรองรับอยู่แล้วmyEnum.Description()ซึ่งจะส่งคืนคำอธิบายสตริงอย่างชัดเจน ในการใช้งาน JsonConverter มีวิธีนี้: public override bool CanConvert(Type objectType) { } ฉันกำลังพยายามหาวิธีตรวจสอบว่าobjectTypeเป็นEnumและส่งคืนจริงหรือไม่เพื่อให้ตัวแปลงรู้ว่าสามารถแปลงวัตถุนี้ได้ เนื่องจากฉันมีหลายตัวEnumฉันจึงไม่สามารถตรวจสอบแต่ละอันได้อย่างชัดเจนดังนั้นฉันจึงหวังว่าจะมีวิธีการทั่วไปในการบรรลุเป้าหมายนี้มากขึ้น
117 c#  enums 

2
ตัวแปร enum ที่แตกต่างกันทำงานอย่างไรใน TypeScript
TypeScript มีหลายวิธีในการกำหนด enum: enum Alpha { X, Y, Z } const enum Beta { X, Y, Z } declare enum Gamma { X, Y, Z } declare const enum Delta { X, Y, Z } หากฉันพยายามใช้ค่าจากGammaรันไทม์ฉันได้รับข้อผิดพลาดเนื่องจากGammaไม่ได้กำหนดไว้ แต่นั่นไม่ใช่กรณีของDeltaหรือAlpha? อะไรconstหรือdeclareหมายถึงในการประกาศที่นี่? นอกจากนี้ยังมีpreserveConstEnumsแฟล็กคอมไพเลอร์ - สิ่งนี้โต้ตอบกับสิ่งเหล่านี้อย่างไร
116 enums  typescript 

14
สร้าง Enum โดยอัตโนมัติตามค่าในตารางการค้นหาฐานข้อมูลหรือไม่
ฉันจะสร้าง enum โดยอัตโนมัติแล้วใช้ค่าใน C # ตามค่าในตารางการค้นหาฐานข้อมูลได้อย่างไร (โดยใช้ชั้นข้อมูลไลบรารีขององค์กร) ตัวอย่างเช่นถ้าฉันเพิ่มค่าการค้นหาใหม่ในฐานข้อมูลฉันไม่ต้องการที่จะต้องเพิ่มการประกาศค่า enum แบบคงที่พิเศษในโค้ดด้วยตนเอง - ฉันต้องการให้ enum ซิงค์กับฐานข้อมูล มีแบบนี้ด้วยเหรอ? ฉันไม่ต้องการสร้างโค้ดที่สร้างแบบคงที่ enum (ตามบทความThe Code Project Enum Code Generator - การสร้างโค้ด enum โดยอัตโนมัติจากตารางค้นหาฐานข้อมูล ) และต้องการให้เป็นแบบอัตโนมัติโดยสมบูรณ์
116 c#  database  dynamic  enums 


6
วิธี Java Enum - ส่งกลับทิศทางตรงกันข้าม enum
ฉันต้องการประกาศทิศทาง enum ซึ่งมีวิธีการที่ส่งกลับทิศทางตรงกันข้าม (ต่อไปนี้ไม่ถูกต้องตามไวยากรณ์กล่าวคือไม่สามารถสร้างอินสแตนซ์ enums ได้ แต่แสดงให้เห็นถึงจุดของฉัน) เป็นไปได้ใน Java หรือไม่? นี่คือรหัส: public enum Direction { NORTH(1), SOUTH(-1), EAST(-2), WEST(2); Direction(int code){ this.code=code; } protected int code; public int getCode() { return this.code; } static Direction getOppositeDirection(Direction d){ return new Direction(d.getCode() * -1); } }
113 java  enums  enumeration 

8
สามารถใช้ == บน enums ใน Java ได้หรือไม่?
ใช้==กับ enums ใน Java ได้หรือไม่หรือต้องใช้.equals()? ในการทดสอบของฉันใช้==งานได้เสมอ แต่ฉันไม่แน่ใจว่ารับประกันได้หรือไม่ โดยเฉพาะอย่างยิ่งไม่มี.clone()วิธีการใน enum ดังนั้นฉันจึงไม่รู้ว่าเป็นไปได้หรือไม่ที่จะได้ enum ที่.equals()จะส่งคืนค่าที่แตกต่างจาก==. ตัวอย่างเช่นนี้ใช้ได้หรือไม่: public int round(RoundingMode roundingMode) { if(roundingMode == RoundingMode.HALF_UP) { //do something } else if (roundingMode == RoundingMode.HALF_EVEN) { //do something } //etc } หรือฉันต้องเขียนด้วยวิธีนี้: public int round(RoundingMode roundingMode) { if(roundingMode.equals(RoundingMode.HALF_UP)) { //do something } else if (roundingMode.equals(RoundingMode.HALF_EVEN)) …
111 java  syntax  enums 

3
enum - รับค่า enum จากการแปลงสตริง
ฉันได้กำหนด enum ดังต่อไปนี้ from enum import Enum class D(Enum): x = 1 y = 2 print(D.x) ตอนนี้ค่าที่พิมพ์คือ D.x ฉันต้องการให้พิมพ์ค่า enum แทน 1 จะทำอย่างไรเพื่อให้บรรลุฟังก์ชันนี้?

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.