本文主要是介绍层层清晰:面向对象的代码模型,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
好了,在经历了面向过程的代码之后,我们来观察以下使用面向对象思路的代码:
string s = "12.14";
bool format = true;
int precision = 2;
char symbol = '$';
if (s.LastIndexOf(symbol) > 0)
{
//货币负号非法
format = false;
}
s = s.Replace(symbol, ' ');
if (s.LastIndexOf('.') > 0)
{
//负号非法
format = false;
}
s = s.Replace("-", "");
if (s.LastIndexOf('.') > -1 && s.Length - s.LastIndexOf('.') > precision + 1)
{
//精度非法
format = false;
}
string tmpStr = s.Replace(".", "");
for (int i = 0; i <= tmpStr.Length - 1; i++)
{
if (!char.IsNumber(tmpStr[i]))
{
//有非数字的字符
format = false;
break;
}
}
if (s.Split('.')[0] != int.Parse(s.Split('.')[0]).ToString())
{
//整数的前导有0
format = false;
}
System.Console.WriteLine(format);
上述的代码结构非常清晰,编写者抓住了需求的本质是检查数字的合法性,因此在代码的编写过程中将那些影响数字的前缀都一一过滤,以可以实现结构合理的代码块了。
这篇关于层层清晰:面向对象的代码模型的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!