提问人:A .M 提问时间:9/12/2023 最后编辑:A .M 更新时间:9/12/2023 访问量:90
运行代码 [closed] 时跳过 C# If-Statement。
C# If-Statement is skipped when runnig code [closed]
问:
问题
您好,在我的代码中,当我运行代码时跳过了 if 语句,但是当我调试它时,它运行正常。此外,当我删除:
homepage.homepageErzeugen();
它运行正常
法典
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ATM
{
class CashWithdrawel
{
//Felder
Customer kunde = new Customer();
Homepage homepage = new Homepage();
//Public Methoden
public double GeldAbbuchen()
{
Console.Write("Geben sie den gewünchten Betrag ein: ");
double abbuchungsWert = Convert.ToDouble(Console.ReadLine());
if (kunde.Kontostand <= 0)
{
Console.WriteLine("Sie haben nicht genügend Geld!");
Console.WriteLine("Wählen sie einen anderen Betrag aus");
}
else
{
kunde.Kontostand -= abbuchungsWert;
Console.WriteLine("Sie haben {0} Euro erfolgreich abgebucht", abbuchungsWert);
Console.WriteLine("Der neue Kontostand beträgt: {0} Euro", kunde.Kontostand);
}
homepage.homepageErzeugen();
return abbuchungsWert;
}
}
}
Customer 类的代码
//Felder
public string Vorname { get; set; }
public string Nachname { get; set; }
public int Kundennummer { get; set; }
public string Passwort { get; set; }
public double Kontostand { get; set; }
public string[] lines = File.ReadAllLines(@"C:\dev\MunirAbdullah\C#\ATM\Benutzerkonten.txt");
int varForConstrucor;
string[] lines2;
//Konstruktor
public Customer()
{
lines2 = lines[varForConstrucor].Split();
Vorname = lines2[0];
Nachname = lines2[1];
}
//Public Methoden
public bool checkIfBenutzerExestiert(string benutzer)
{
bool beneutzerExestiert = false;
for (int i = 0; i < lines.Length; i++)
{
if (lines[i] == benutzer)
{
varForConstrucor = i;
//Passwort abfrage initialisieren
Console.Clear();
Menu menu = new Menu();
menu.createMenu();
beneutzerExestiert = true;
}
}
return beneutzerExestiert;
}
public double checkTotalAmountOfMoney()
{
return Kontostand;
}
}
Homepage 类的代码
class Homepage
{
public void homepageErzeugen()
{
Console.Clear();
Console.Title = "Remmert Finance Application";
Console.ForegroundColor = ConsoleColor.Magenta;
string welcomeText = "Willkomen bei RemmertFinance";
Console.SetCursorPosition((Console.WindowWidth -
welcomeText.Length) / 2, Console.CursorTop);
Console.WriteLine(welcomeText + "\n");
Console.ForegroundColor = ConsoleColor.White;
Console.Write("Bitte geben sie ihr Benutzername ein: ");
Customer kunde = new Customer();
kunde.checkIfBenutzerExestiert(Console.ReadLine());
string curBenutzerName = Console.ReadLine();
}
}
我做了什么
我已经在寻找解决方案,唯一发现的是条件可能是错误的
答:
1赞
A .M
9/12/2023
#1
问题在于,类 Homepage 以:Console.Clear(); 所以控制台刷新到很快,所以我看不到 If 语句的输出
溶液:
Console.WriteLine("Press any button");
Console.ReadKey();
homepage.homepageErzeugen();
return abbuchungsWert;
下一个:数据表和最小值 IF?
评论
else
homepageErzeugen
GeldAbbuchen