1樓:匿名使用者
隱式轉換
當對簡單的值型別進行轉換時,如果是按照 byte,short,int,long,float,double從左到右(從短到長)進行轉換的時候,可以直接進行轉換(隱式轉換),不用做任何說明。簡單的**示例:
static void main(string args)
顯示轉換
依然是對值型別進行轉換時,從長位元組轉換成短位元組,直接轉換的話,編譯器會提示「無法將型別 *轉換為型別*,存在一個顯示轉換」,這時需要進行強制轉換(顯示轉換)。簡單的**示例:
static void main(string args)
每種資料型別都存在自身的範圍,例如byte型別的範圍是0~255,int型的範圍是0~65535,當int型轉換成byte型別時,如果超出了自身的範圍時會怎麼處理呢?看下**示例:
staticvoid main(string args)
這段**的執行結果 「b的值為0」,如果把a的值改為257,則b的值為1。結果是怎麼來的,編譯器會把256轉換成對應的二進位制,也就是100000000,當轉換成byte型別時(8位二進位制數),會長出8位的部分截掉,因此結果變成了0。
tostring()轉換
當把值型別轉換成字串型別時,可以直接呼叫值型別的方法tostring()進行轉換,另外tostring還可以將結果轉換成相應的進位制形式,簡單的**示例:
staticvoid main(string args)
static void main(string args)
parse方法
像int、long、float型別都有parse方法,可以將字串轉換為對應的資料型別,簡單的**例項:
staticvoid main(string args)
}convert類
convert有很多的轉換資料型別的方法,它將繼承自object型別的物件轉換為制定的型別,即convert.toint32()(還有對應其他型別的轉換)。另外的一種方法:
convert.changetype(object,type),這種方法在涉及到泛型時會顯現出優勢。
2樓:西門吹蠟燭
double a = 1.0;
string b = string.empty;
b = a.tostring();
b = convert.tostring(a);
b = a + "";
//上面三種方式都可以
3樓:
double d = 1.0;
string s = d+"";//或者d.tostring();
4樓:匿名使用者
.tostring()
c#中如何將double或string型別的資料轉換成decimal型別的資料,為什麼我再在用convert轉換時程式報錯?
5樓:
1、開啟編寫c語言的軟體codeblocks。
2、建立一個編寫c語言的檔案。
3、接下來開始編寫程式,首先是準備轉換中需要用到的變數和常量。
4、接著是使用clrscr函式限定開始轉換,並且給value賦值為自己想要轉換的double型資料。
5、再然後就是使用ecvt函式開始進行轉換,並且將轉換的結果付給字元陣列string。
6、接著就是使用printf函式輸出用於接收value值的字串string。
7、最後可以在控制檯上看到輸出的結果,正式value的值,不過這個值程式設計字串格式了。
6樓:匿名使用者
convert.todecimal 支援string 轉decimal 的
應該是你spedprice.text 的格式不對.
至少應該是d.d格式 而且不能有空格
傳進來 先應該用正則判斷下是否為數字.
7樓:匿名使用者
decimal.parse(spedprice.text)。就**效率來說,convert不如parse高。
「未將物件引用到例項」是你沒有例項化,就是程式不知道opt或spedprice是打哪來的,跟型別轉換沒關係。
8樓:匿名使用者
opt.productprice =decimal.parse(spedprice.text)
當然考慮到空值等因素,最好是些成方法:
decimal converttodcm(string strvalue)
catch
}然後 opt.productprice =converttodcm(spedprice.text);
c#中怎麼把double型別轉換成int型別
9樓:不不見不念
第一種 強制型別轉換
double d=1.5;
int i=(int)d;
這種方式的話採取的是截位,意思就是去掉小數點後的數字,比如1.8,結果是1,如果是1.9999999,那結果也是1;
第二種 使用round函式:
double d=1.6;
int i = math.round(d, 0);(保留0維小數就是取整)
第二個參數列示的是保留的小數位數,使用round函式是四捨五入,而不是截位,比如是1.4,那結果就是1,是1.5,結果就是2
10樓:匿名使用者
double a = 123.0;
int b = (int)a;
11樓:踏浪帥
int a=double.parse(***);
c#中如何把string型別轉換為double型別?
12樓:匿名使用者
隱式轉換
當對簡單的值型別進行轉換時,如果是按照 byte,short,int,long,float,double從左到右(從短到長)進行轉換的時候,可以直接進行轉換(隱式轉換),不用做任何說明。簡單的**示例:
static void main(string args)
顯示轉換
依然是對值型別進行轉換時,從長位元組轉換成短位元組,直接轉換的話,編譯器會提示「無法將型別 *轉換為型別*,存在一個顯示轉換」,這時需要進行強制轉換(顯示轉換)。簡單的**示例:
static void main(string args)
每種資料型別都存在自身的範圍,例如byte型別的範圍是0~255,int型的範圍是0~65535,當int型轉換成byte型別時,如果超出了自身的範圍時會怎麼處理呢?看下**示例:
staticvoid main(string args)
這段**的執行結果 「b的值為0」,如果把a的值改為257,則b的值為1。結果是怎麼來的,編譯器會把256轉換成對應的二進位制,也就是100000000,當轉換成byte型別時(8位二進位制數),會長出8位的部分截掉,因此結果變成了0。
tostring()轉換
當把值型別轉換成字串型別時,可以直接呼叫值型別的方法tostring()進行轉換,另外tostring還可以將結果轉換成相應的進位制形式,簡單的**示例:
staticvoid main(string args)
static void main(string args)
parse方法
像int、long、float型別都有parse方法,可以將字串轉換為對應的資料型別,簡單的**例項:
staticvoid main(string args)
}convert類
convert有很多的轉換資料型別的方法,它將繼承自object型別的物件轉換為制定的型別,即convert.toint32()(還有對應其他型別的轉換)。另外的一種方法:
convert.changetype(object,type),這種方法在涉及到泛型時會顯現出優勢。
13樓:
string shuzi2 = convert.todouble(shuzi1);
改double shuzi2 = convert.todouble(shuzi1);
14樓:匿名使用者
convert.todouble(shuzi1)是一個double型的資料,轉換為string需要新增tostring(),修改為:
string shuzi1 = "123.436";
string shuzi2 = convert.todouble(shuzi1).tostring();
或:double shuzi2 = convert.todouble(shuzi1);即可。
在C中如何將INT型資料強制轉換為STRING型
int 是數,string 是字串,不能轉換的你需要的是將數值以字串方式表達 應該這樣 int a 3 string str a.tostring orint a 3 string str convert.tostring a 我是不是多此一舉啊?呵呵 奚雪瑤鄢奧 int.parse 方法或者 in...
如何將js的物件型別轉換成陣列型別
寢室 只需要一句,arr.proto 但是要注意瀏覽器支援 proto 才行,最新的瀏覽器應該都支援。以下兩種都可以解決此問題 function transform obj return arr 或者 public static void main string args int array new...
c中如何將字串與顏色相互轉換
string c1 system.drawing.colortranslator.tohtml system.drawing.color.red c1 ff0000 或c1 red system.drawing.color c2 system.drawing.colortranslator.from...