|
|
|
|
|
像其他編程語言一樣,在 C# 中我們可以將字符串轉(zhuǎn)換為 int。轉(zhuǎn)換的方式有以下三種:
輸入字符串可以是“10”、“10.10”、“10webkaka”、“”之類的任何內(nèi)容(字符串可以是數(shù)字、字符組合或空字符串)。
當(dāng)給定字符串是數(shù)字或浮點(diǎn)數(shù)時(shí),我們可以直接使用上面列出的任何方法將其從字符串轉(zhuǎn)換為 int
,但是字符和空字符串的組合會(huì)拋出需要使用異常處理來捕獲的錯(cuò)誤。
1、使用 Parse 方法
在這里,我們計(jì)算正方形的面積,但給定的輸入長(zhǎng)度是字符串格式,因此使用Int32.Parse()
方法將長(zhǎng)度從字符串轉(zhuǎn)換為 int
(等效于 32 位有符號(hào)整數(shù))。
// C#使用Parse方法將字符串轉(zhuǎn)換為整數(shù)
using System;
namespace WebKaka {
class WKK{
// Main Method
public static void Main(string[] args)
{
// 定義字符串
string l = "10";
// 使用方法
int length = Int32.Parse(l);
// 獲得正方形面積
int aofs = length * length;
Console.WriteLine("正方形的面積是: {0}", aofs);
}
}
}
輸出:
正方形的面積是:100
當(dāng)我們有一個(gè)大于 Integer
的值時(shí):如果將大數(shù)字分配給 string
,那么它將拋出OverflowException
的異常,因?yàn)?int
數(shù)據(jù)類型無法處理大值(這在很大程度上取決于數(shù)據(jù)類型的范圍)。
l = "10000000000";
輸出是:
System.OverflowException: Value was either too large or too small for an Int32.
當(dāng)我們有空字符串時(shí):如果將字符串保留為空白,那么它將通過異常系統(tǒng)格式異常,因?yàn)檩斎霝榭瞻住?/p>
l = "";
輸出將是:
System.FormatException:輸入字符串的格式不正確。
2、使用 TryParse 方法
在這里,我們將使用 TryParse()
方法,Parse()
和 TryParse()
方法的區(qū)別只是 TryParse()
方法總是返回值,它永遠(yuǎn)不會(huì)拋出異常。
// C# TryParse方法轉(zhuǎn)換字符串為int數(shù)值
using System;
namespace WebKaka {
class WKK{
// Main Method
public static void Main(string[] args)
{
// 定義字符串
string l = "10000000000";
int length = 0;
// 使用方法
Int32.TryParse(l, out length);
// 計(jì)算正方形面積
int aofs = length * length;
Console.WriteLine("正方形面積是: {0}", aofs);
}
}
}
輸出:
正方形面積是: 100
你也可以看看下面這幾篇文章
3、使用 Convert 方法
在這里,我們使用Convert.ToInt32()
方法,Parse()
和 Convert.ToInt32()
方法的區(qū)別只是 Convert.ToInt32()
方法接受空值并返回它,輸出為零。我們?cè)诖耸纠惺褂昧水惓L幚?,因此,如果發(fā)生,try
塊將拋出異常,而 catch
塊將接受異常并寫入發(fā)生的任何異常。
// C# convert方法轉(zhuǎn)換字符串為int數(shù)值
using System;
namespace WebKaka {
class WKK {
// Main Method
public static void Main(string[] args)
{
// 定義字符串
string l = null;
try {
int length = Convert.ToInt32(l);
// 計(jì)算長(zhǎng)方形面積
int aofs = length * length;
Console.WriteLine("長(zhǎng)方形面積是: {0}", aofs);
}
catch (Exception e) {
Console.WriteLine("不能轉(zhuǎn)換: 異常:" + e.Message);
}
}
}
}
輸出:
圓的面積是:0
總結(jié)
本文我們介紹了C#將字符串轉(zhuǎn)換為整數(shù)的不同方法,其中TryParse()
是簡(jiǎn)單又安全的方法,推薦使用。
相關(guān)文章