显示具有高于设定量的值的信息

时间:2016-03-28 13:46:06

标签: c#

我有这段代码:

 string[,] drinks = {
   {"Coke ","0"},
   {" Diet-Cola ", "0 "},
   {" Fanta ", "0 "},
   {" Dr Pepper ", "0 "},
   {" Orange Juice ", "0 "},
   {" Apple juice ", "0 "},
   {" Grapefruit Juice ", "0 "},
   {" Prune juice ", "0 "}};

string message = "The Drinks you have chosen are: ";

List<TextBox> textBoxes = new List<TextBox>() { 
  txt1, txt2, txt3, txt4, txt5, txt6, txt7, txt8 };

for (int i = 0; i < textBoxes.Count; i++)
{
    drinks[i, 1] = textBoxes[i].Text;
}

for (int i = 0; i < 8; i++)
{
    if (drinks[i,0][1] > 0)
        message = message + drinks[i,0] + drinks[i,1];
}

Data.message = message;

有效。我唯一的问题是它显示的饮料价值为0而不是仅显示价值高于0的饮料。

例如: 简确实想要订购3个可乐,2个芬达和一个西梅汁。并且仅显示这些,而不显示其余值,其值为0

有任何帮助实现这一目标吗?

感谢

P.S。我的大学正在使用visual studio 2010 express for windows phone

1 个答案:

答案 0 :(得分:0)

if (drinks[i,0][1] > 0)行应为if (drinks[i,1] > 0)

此外,您的数组中包含String值,并且您尝试将其与Integer值进行比较。所以,你应该进行类型转换:

for (int i = 0; i < 8; i++)
{
    if ((int)drinks[i,1] > 0)
        message = message + drinks[i,0] + drinks[i,1];
}