Công cụ bảo vệ mã nguồn .NET mạnh nhất, không thể unpack, miễn phí cho các khách hàng đầu tiên đăng ký.
Từ 1 tới 6 trên tổng số 6 kết quả

Đề tài: Các cách ép kiểu trong C# _ int.Parse() hoặc Convert.ToInt16()

  1. #1
    Ngày gia nhập
    03 2009
    Bài viết
    66

    Mặc định Các cách ép kiểu trong C# _ int.Parse() hoặc Convert.ToInt16()

    Mình thấy trong C# có 2 kiểu ép kiểu cho kiểu int là 1> int.Parse() hoặc 2> Convert.ToInt16()
    (tương tự cho các kiểu dữ liệu khác )
    mình ko hiểu lúc nào nên dùng 1> hoặc 2>
    và trong cách ép dữ liệu đó thì chúng ta nên dùng loại nào ?
    mong mọi người giúp đỡ !
    Công cụ bảo vệ mã nguồn .NET mạnh nhất hiện tại, miễn phí cho các khách hàng đầu tiên đăng ký.

  2. #2
    Ngày gia nhập
    08 2009
    Nơi ở
    TP Cần Thơ - Lộ 91B
    Bài viết
    215

    - int.Parse( ) : thường dùng để chuyển từ chuổi số sang số nguyên
    - Convert.ToInt16 hoặc Convert.ToInt32 : dùng để chuyển nhiều loại đối tượng về dạng số nguyên bao gồm luôn kiểu string
    - 2 cách này bạn dùng cách nào cũng được tùy người lập trình thôi

    - Ngoài ra bạn còn cách ép kiểu khác là : (int)object hoặc int(object)

  3. #3
    Ngày gia nhập
    03 2009
    Bài viết
    66

    Trích dẫn Nguyên bản được gửi bởi latuine Xem bài viết
    - int.Parse( ) : thường dùng để chuyển từ chuổi số sang số nguyên
    - Convert.ToInt16 hoặc Convert.ToInt32 : dùng để chuyển nhiều loại đối tượng về dạng số nguyên bao gồm luôn kiểu string
    - 2 cách này bạn dùng cách nào cũng được tùy người lập trình thôi

    - Ngoài ra bạn còn cách ép kiểu khác là : (int)object hoặc int(object)
    Mình thấy mọi đối tượng đều có thuộc tính Tostring() vậy dùng int.parse(object.tostring()) ,
    như vậy đâu cần dùng Convert nữa ??

  4. #4
    Ngày gia nhập
    04 2010
    Bài viết
    1,534

    Trích dẫn Nguyên bản được gửi bởi troinau Xem bài viết
    Nguyên bản được gửi bởi latuine
    - int.Parse( ) : thường dùng để chuyển từ chuổi số sang số nguyên
    - Convert.ToInt16 hoặc Convert.ToInt32 : dùng để chuyển nhiều loại đối tượng về dạng số nguyên bao gồm luôn kiểu string
    - 2 cách này bạn dùng cách nào cũng được tùy người lập trình thôi

    - Ngoài ra bạn còn cách ép kiểu khác là : (int)object hoặc int(object)
    Mình thấy mọi đối tượng đều có thuộc tính Tostring() vậy dùng int.parse(object.tostring()) ,
    như vậy đâu cần dùng Convert nữa ??
    Người ta đã nói "cách nào cũng được" rồi. Untilities có thiếu gì cái trùng nhau!

  5. #5
    Ngày gia nhập
    08 2009
    Nơi ở
    TP Cần Thơ - Lộ 91B
    Bài viết
    215

    Trích dẫn Nguyên bản được gửi bởi troinau Xem bài viết
    Mình thấy mọi đối tượng đều có thuộc tính Tostring() vậy dùng int.parse(object.tostring()) ,
    như vậy đâu cần dùng Convert nữa ??
    - Cái thuộc tính ToString() không nên áp dụng bừa bãi.
    - Các Object đều có hàm ToString(). Hàm này sẽ trả về tên của object và namespace chứa object đó tùy vào người lập trình định nghĩa
    - Chỉ có các kiểu số thì khi ToString() nó sẽ trả về dạng chuổi với các ký tự số đó
    - Bạn cũng có thể tái định nghĩa lại hàm ToString() của các đối tượng

    - Ví dụ khi bạn định nghĩa 1 Class PhanSo như sau
    Code:
    public class PhanSo{
           public int tu, mau;
           public PhanSo ( int tu, int mau ){
                   this.tu = tu;
                   this.mau = mau;
           }
    }
    - Trong Class ở trên VS sẽ tự động đưa hàm ToString() vào cho bạn luôn. Và nếu dùng ToString() nó sẽ trả ra cho bạn là chuổi : [tên SoLuTion] + PhanSo
    - Vậy thì bây giờ mình sẽ tái định nghĩa hàm ToString() để nó phải trả ra cho mình là : [giá trị tử] / [ giá trị mẩu ]

    Code:
    public class PhanSo{
           public int tu, mau;
           public PhanSo ( int tu, int mau ){
                   this.tu = tu;
                   this.mau = mau;
           }
           public override string ToString()
            {          
               return this.tu.ToString() + "/" + this.mau.ToString() ;
    
               //-- hoặc 
               //-- return (tu/mau).ToString();
            }
    }
    Đã được chỉnh sửa lần cuối bởi latuine : 20-07-2011 lúc 11:54 AM.

  6. #6
    Ngày gia nhập
    12 2012
    Bài viết
    2

    Mặc định Các cách ép kiểu trong C# _ int.Parse() hoặc Convert.ToInt16()

    Mình có một trường col2= (1,2,3,4,5,6,7,8) lấy từ CSDL ra (bảng table2);
    Mình muốn lấy dữ liệu từ một bảng khác table1, có điều kiện trường col1 kiểu số nguyên thuộc col2 ở trên; câu lệnh như sau :

    Select * from table1 where col1 in (select col2 from table2)

    Lấy trong CSDL Oracle; nó báo là col1 và col2 khác kiểu;
    Có cách nào để ép col2 thành kiểu nguyên không các bạn ?
    Công cụ bảo vệ mã nguồn .NET mạnh nhất hiện tại, miễn phí cho các khách hàng đầu tiên đăng ký.

Các đề tài tương tự

  1. Parse dữ liệu qua các thẻ web
    Gửi bởi duyttt trong diễn đàn Tài liệu, ebooks và công cụ
    Trả lời: 0
    Bài viết cuối: 27-10-2013, 04:10 PM
  2. Socket Cách tryền nhiều ip address thay vi ipaddress.any hoặc ipaddress.parse("127.0.0.1")?
    Gửi bởi theClassicMan27 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 12
    Bài viết cuối: 29-03-2012, 02:35 PM
  3. Lỗi convert từ * qua char [20].(Hoặc lỗi convert các kiểu)Mình rất hay bị lỗi này
    Gửi bởi kuhoang0512 trong diễn đàn Thảo luận, góp ý code C/C++ của bạn
    Trả lời: 5
    Bài viết cuối: 07-11-2011, 08:20 PM
  4. lỗi parse error before ')', các bạn cho mình hỏi đây là lỗi j
    Gửi bởi ndhbk trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 2
    Bài viết cuối: 28-11-2010, 11:46 PM
  5. Lỗi Cannot implicitly convert type khi Convert Array to List trong WCF ???
    Gửi bởi dangbk trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 4
    Bài viết cuối: 26-09-2010, 05:43 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn