c#实现从字符串数组中把数字的元素找出来

时间:2022-06-11 05:27:30

下面这个字符串数组:

?
1
string[] str = { "3","y","34","qq","41","adsf4","7","52"};

实现这个要求的方法也许会很多。下面insus.net使用一个通用的方法来实现:

面向对象,创建一个类别class digit:

#cd60fa8af44b9a19e8726bb00357de1c#

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class digit
 {
 private int _d;
 
 public int d
 {
  get { return _d; }
  set { _d = value; }
 }
 
 public digit(int digit)
 {
  this._d = digit;
 }
 }

在类别中,添加2个方法,一是判断元素是否为数字,另一个是是重写tostring()方法:

c#实现从字符串数组中把数字的元素找出来

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public static bool tryparse(string str, out digit digit)
 {
  digit = null;
 
  if (string.isnullorempty(str))
  return false;
 
  int i;
  if (!int.tryparse(str, out i))
  return false;
  digit = new digit(i);
  return true;
 }
 
 public override string tostring()
 {
  return _d.tostring();
 }

方法已经实现,可以在控制台中测试一下:

c#实现从字符串数组中把数字的元素找出来

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
string[] str = { "3","y","34","qq","41","adsf4","7","52"};
 
  var result = new list<digit>();
 
  foreach (string s in str)
  {
  digit d;
  if (digit.tryparse(s, out d))
   result.add(d);
  }
 
  foreach (digit d in result)
  {
  console.writeline(d.tostring());
  }

以上这篇c#实现从字符串数组中把数字的元素找出来就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:http://www.cnblogs.com/insus/archive/2017/12/07/8001026.html