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

การคัดเลือกนักแสดงเป็นกระบวนการที่ประเภทวัตถุจะถูกแปลงเป็นประเภทอื่นอย่างชัดเจนหากได้รับอนุญาตให้ทำการแปลง กระบวนการนี้อาจนำไปสู่การเปลี่ยนแปลงมูลค่า

7
การแสดงออกของ C # ลอย: พฤติกรรมแปลก ๆ เมื่อส่งผลลอยไปยัง int
ฉันมีรหัสง่ายๆดังต่อไปนี้: int speed1 = (int)(6.2f * 10); float tmp = 6.2f * 10; int speed2 = (int)tmp; speed1และspeed2ควรมีค่าเท่ากัน แต่อันที่จริงฉันมี: speed1 = 61 speed2 = 62 ฉันรู้ว่าฉันควรใช้ Math.Round แทนการคัดเลือกนักแสดง แต่ฉันต้องการที่จะเข้าใจว่าทำไมค่าต่างกัน ฉันดูโค้ดไบต์ที่สร้างขึ้น แต่ยกเว้นร้านค้าและโหลด opcodes เหมือนกัน ฉันยังลองรหัสเดียวกันใน java และฉันได้รับ 62 และ 62 อย่างถูกต้อง มีคนอธิบายเรื่องนี้ได้ไหม แก้ไข: ในรหัสจริงมันไม่ได้โดยตรง 6.2f * 10 แต่ฟังก์ชั่นการโทร * ค่าคงที่ ฉันมีรหัสไบต์ต่อไปนี้: …

13
ฉันจะสร้างสตริงเป็นจำนวนเต็มและมี 0 ได้อย่างไรในกรณีที่เกิดข้อผิดพลาดในการแคสต์ด้วย PostgreSQL
ใน PostgreSQL ฉันมีตารางที่มีคอลัมน์ varchar ข้อมูลควรเป็นจำนวนเต็มและฉันต้องการให้เป็นจำนวนเต็มในแบบสอบถาม ค่าบางค่าเป็นสตริงว่าง ดังต่อไปนี้: SELECT myfield::integer FROM mytable อัตราผลตอบแทน ERROR: invalid input syntax for integer: "" ฉันจะสอบถามนักแสดงและมี 0 ได้อย่างไรในกรณีที่เกิดข้อผิดพลาดระหว่างการแคสต์ใน postgres
128 sql  postgresql  casting 

4
วิธีหลีกเลี่ยงคำเตือนเมื่อแนะนำ NAs โดยการบีบบังคับ
โดยทั่วไปฉันชอบเขียนโค้ด R เพื่อที่จะไม่ได้รับคำเตือน แต่ฉันไม่รู้วิธีหลีกเลี่ยงการรับคำเตือนเมื่อใช้as.numericเพื่อแปลงเวกเตอร์อักขระ ตัวอย่างเช่น: x <- as.numeric(c("1", "2", "X")) จะให้คำเตือนเพราะแนะนำ NAs โดยการบีบบังคับ ฉันต้องการให้ NAs แนะนำโดยการบีบบังคับ - มีวิธีที่จะบอกได้ไหมว่า "ใช่นี่คือสิ่งที่ฉันต้องการทำ" หรือฉันควรอยู่กับคำเตือน? หรือฉันควรใช้ฟังก์ชันอื่นสำหรับงานนี้
124 r  parsing  casting  na 

9
พิมพ์สตริงเป็นจำนวนเต็ม - Postgres
ฉันกำลังนำเข้าข้อมูลจากตารางที่มีฟีดดิบใน Varchar ฉันต้องการนำเข้าคอลัมน์ใน varchar ลงในคอลัมน์สตริง ฉันลองใช้<column_name>::integerเช่นเดียวกับto_number(<column_name>,'9999999')แต่ฉันได้รับข้อผิดพลาดเนื่องจากมีช่องว่างสองสามช่องฉันจึงต้องดึงข้อมูลเหล่านั้นเป็นช่องว่างหรือว่างในตารางใหม่ โปรดแจ้งให้เราทราบหากมีฟังก์ชันที่เหมือนกัน

8
มีความคิดอย่างไรว่าทำไมฉันต้องใส่ลิเทอรัลจำนวนเต็มเป็น (int) ที่นี่
ในตัวอย่างต่อไปนี้ int i = -128; Integer i2 = (Integer) i; // compiles Integer i3 = (Integer) -128; /*** Doesn't compile ***/ Integer i4 = (Integer) (int) -128; // compiles Integer i4 = -128; // compiles Integer i5 = (int) -128; // compiles Integer i6 = (Integer) (-128); // compiles Integer …
122 java  syntax  casting 


2
C ++ แปลงจาก 1 อักขระเป็นสตริง? [ปิด]
คำถามนี้ไม่น่าจะช่วยผู้เยี่ยมชมในอนาคตได้ มีความเกี่ยวข้องกับพื้นที่ทางภูมิศาสตร์ขนาดเล็กช่วงเวลาที่เฉพาะเจาะจงหรือสถานการณ์ที่แคบเป็นพิเศษซึ่งโดยทั่วไปไม่สามารถใช้ได้กับผู้ชมอินเทอร์เน็ตทั่วโลก สำหรับความช่วยเหลือในการทำคำถามนี้มากขึ้นบังคับในวงกว้างไปที่ศูนย์ช่วยเหลือ ปิดให้บริการใน7 ปีที่ผ่านมา ฉันต้องร่าย 1 charถึงstringเท่านั้น str[0]ทางตรงข้ามสวยเรียบง่ายเช่น สิ่งต่อไปนี้ใช้ไม่ได้สำหรับฉัน: char c = 34; string(1,c); //this doesn't work, the string is always empty. string s(c); //also doesn't work. boost::lexical_cast<string>((int)c); //also doesn't work.
121 c++  casting 


8
PHP String เพื่อลอย
ฉันไม่คุ้นเคยกับ PHP เลยและมีคำถามสั้น ๆ ฉันมี 2 ตัวแปรpricePerUnitและInvoicedUnits. นี่คือรหัสที่ตั้งค่าเหล่านี้เป็นค่า: $InvoicedUnits = ((string) $InvoiceLineItem->InvoicedUnits); $pricePerUnit = ((string) $InvoiceLineItem->PricePerUnit); ถ้าฉันส่งออกสิ่งนี้ฉันจะได้ค่าที่ถูกต้อง ให้บอก5000หน่วยที่ออกใบแจ้งหนี้และ1.00ราคา ตอนนี้ฉันต้องแสดงจำนวนเงินทั้งหมดที่ใช้ไป เมื่อฉันคูณสองสิ่งนี้เข้าด้วยกันมันไม่ได้ผล (ตามที่คาดไว้นี่คือสตริง) แต่ฉันไม่รู้วิธีแยกวิเคราะห์ / โยน / แปลงตัวแปรใน PHP ฉันควรทำอย่างไรดี?

8
ส่ง int เป็น varchar
ฉันมีคำถามด้านล่างและจำเป็นต้องส่งidถึงvarchar schema create table t9 (id int, name varchar (55)); insert into t9( id, name)values(2, 'bob'); สิ่งที่ฉันพยายาม select CAST(id as VARCHAR(50)) as col1 from t9; select CONVERT(VARCHAR(50),id) as colI1 from t9; แต่ไม่ได้ผล ช่วยแนะนำหน่อยครับ.
119 mysql  sql  database  casting  mariadb 


3
การแปลงคู่เป็นจำนวนเต็มใน java
ใน Java ฉันต้องการแปลงคู่เป็นจำนวนเต็มฉันรู้ว่าคุณทำสิ่งนี้: double x = 1.5; int y = (int)x; คุณจะได้รับ y = 1 หากคุณทำสิ่งนี้: int y = (int)Math.round(x); คุณน่าจะได้ 2 อย่างไรก็ตามฉันสงสัยว่า: เนื่องจากบางครั้งการแทนค่าจำนวนเต็มสองครั้งดูเหมือน 1.9999999998 หรือบางอย่างมีความเป็นไปได้หรือไม่ที่การคัดเลือกคู่ที่สร้างขึ้นผ่านทาง Math.round () จะยังคงส่งผลให้ตัวเลขที่ถูกตัดทอนลง กว่าจำนวนปัดเศษที่เรากำลังมองหา (เช่น: 1 แทนที่จะเป็น 2 ในรหัสที่แสดง)? (และใช่ฉันไม่ได้หมายความว่ามันเป็นเช่นนี้: มีใด ๆค่าสำหรับ X, Y ที่จะแสดงผลที่เป็นมากกว่าการตัดทอนเป็นตัวแทนโค้งมนของ x หรือไม่?) ถ้าเป็นเช่นนั้น: มีวิธีที่ดีกว่าในการเพิ่มค่า int สองเท่าโดยไม่เสี่ยงต่อการตัดทอนหรือไม่? คิดอะไรบางอย่าง: Math.round (x) …
114 java  casting  double  rounding 


14
สวิฟต์สองครั้งเป็นสตริง
ก่อนที่ฉันจะอัปเดต xCode 6 ฉันไม่มีปัญหาในการส่งคู่เป็นสตริง แต่ตอนนี้ฉันมีข้อผิดพลาด var a: Double = 1.5 var b: String = String(a) มันทำให้ฉันมีข้อความแสดงข้อผิดพลาด "double is not convertible to string" มีวิธีอื่นที่จะทำได้หรือไม่?
108 swift  string  casting  double 

5
Kotlin: วิธีใช้งาน List casts: Unchecked Cast: kotlin.collections.List <Kotlin.Any?> ไปยัง kotlin.colletions.List <Waypoint>
ฉันต้องการเขียนฟังก์ชันที่ส่งคืนทุกรายการในรายการListที่ไม่ใช่รายการแรกหรือรายการสุดท้าย (a via point) ฟังก์ชันได้รับข้อมูลทั่วไปList&lt;*&gt;เป็นอินพุต ควรส่งคืนผลลัพธ์ก็ต่อเมื่อองค์ประกอบของรายการเป็นประเภทWaypoint: fun getViaPoints(list: List&lt;*&gt;): List&lt;Waypoint&gt;? { list.forEach { if(it !is Waypoint ) return null } val waypointList = list as? List&lt;Waypoint&gt; ?: return null return waypointList.filter{ waypointList.indexOf(it) != 0 &amp;&amp; waypointList.indexOf(it) != waypointList.lastIndex} } เมื่อส่งList&lt;*&gt;ไปList&lt;Waypoint&gt;ฉันได้รับคำเตือน: Unchecked Cast: kotlin.collections.List to kotlin.colletions.List ฉันไม่สามารถหาวิธีนำไปใช้เป็นอย่างอื่นได้ อะไรคือวิธีที่ถูกต้องในการใช้ฟังก์ชันนี้โดยไม่มีคำเตือนนี้
108 list  generics  casting  kotlin 

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