C# cs(35,34):错误CS1041:应为标识符,`in';这是一个关键词

C# cs(35,34):错误CS1041:应为标识符,`in';这是一个关键词,c#,C#,我不知道C#但是我有作业要从Java转换到C#或C,我发现了一个在线转换器,但是当我把代码放到C#编译器时,我得到了这个错误 cs(35,34):错误CS1041:应为标识符,`in'是关键字 这是我的C#代码: 使用系统; 公共类Java应用程序 { 公共静态无效选择排序(int[]arr) { 对于(int i=0;i

我不知道C#但是我有作业要从Java转换到C#或C,我发现了一个在线转换器,但是当我把代码放到C#编译器时,我得到了这个错误

cs(35,34):错误CS1041:应为标识符,`in'是关键字

这是我的C#代码:

使用系统;
公共类Java应用程序
{
公共静态无效选择排序(int[]arr)
{
对于(int i=0;i
此行导致错误:

Scanner scan = new Scanner(System.in);
System.in
在C#中没有任何意义,因此它在抱怨,因为它正在
System
命名空间中的
中查找名为
的类

在Java控制台应用程序中,
System.In
通常是输入缓冲区(键盘)

在C#中,要从
控制台
读取一行,而不是
扫描仪
(不存在),可以使用
控制台.ReadLine()
。当然,不清楚应用程序中读取的是什么(数字?),因此您可能需要进行一些类型转换,因为
ReadLine()
返回一个
字符串?

编辑以下OP请求以从控制台读取数字

OP询问如何用C#等价物替换从控制台读取数字的现有Java代码。这里有一个建议(有几种方法可以实现相同的目的):

int[]arr1=新的int[10];
Console.WriteLine(“选择前排序:”);
对于(int i=0;i<10;i++)
{
string text=Console.ReadLine();
if(text!=null&&int.TryParse(text,out int-value))
arr1[i]=值;
其他的
WriteLine(“您必须输入一个有效的数字,再试一次。”);
}

大概是这一行:
扫描仪扫描=新扫描仪(System.in)<代码>系统.in
在C#中不存在。大概你需要用静态
控制台
类重写
扫描器
。你能写代码吗“你能写代码吗”-这不就是你做作业的目的吗?你能写正确的代码吗answer@hananfarhat这是你问题的正确答案。你问你为什么会出错,这就是原因。是的,是的,我不是这个意思,首先谢谢你的帮助,但我指的是正确的输入,我指的是如何编写它,因为我不知道c#@hananfarhat你的代码试图做什么?从控制台读取10个数字?
Scanner scan = new Scanner(System.in);
int[] arr1 = new int[10];
Console.WriteLine("Before Selection Sort:");

for (int i = 0; i < 10; i++)
{
    string text = Console.ReadLine();

    if (text != null && int.TryParse(text, out int value))
        arr1[i] = value;
    else
        Console.WriteLine("You must enter a valid number. Try again.");
}