Java有名称空间扫描器类,这与C中的类似
我的背景是java,我正在学习一些C编程语言代码 我的问题是:Java有一个Scanner类用于从用户获取整数输入,C中是否有类似的东西 示例:JavaJava有名称空间扫描器类,这与C中的类似,java,c#,input,Java,C#,Input,我的背景是java,我正在学习一些C编程语言代码 我的问题是:Java有一个Scanner类用于从用户获取整数输入,C中是否有类似的东西 示例:Java import java.util.Scanner; class myClass{ myClass{ } public static void main(){ //Scanner object Scanner input = new Scanner(Sys
import java.util.Scanner;
class myClass{
myClass{
}
public static void main(){
//Scanner object
Scanner input = new Scanner(System.in)
input.nextInt();
}
}
C中的任何类似内容是的,有Console.ReadLine
或者,您可以在C中创建自己的Scanner类
偷自
要获取非数字输入,可以使用Console.ReadLine。 要进行数字或非字符串输入,应使用Console.Read e、 g 字符串s=Console.ReadLine int i=控制台。读取//char、double等也是如此。System.IO.StreamReader
class Scanner : System.IO.StringReader
{
string currentWord;
public Scanner(string source) : base(source)
{
readNextWord();
}
private void readNextWord()
{
System.Text.StringBuilder sb = new StringBuilder();
char nextChar;
int next;
do
{
next = this.Read();
if (next < 0)
break;
nextChar = (char)next;
if (char.IsWhiteSpace(nextChar))
break;
sb.Append(nextChar);
} while (true);
while((this.Peek() >= 0) && (char.IsWhiteSpace((char)this.Peek())))
this.Read();
if (sb.Length > 0)
currentWord = sb.ToString();
else
currentWord = null;
}
public bool hasNextInt()
{
if (currentWord == null)
return false;
int dummy;
return int.TryParse(currentWord, out dummy);
}
public int nextInt()
{
try
{
return int.Parse(currentWord);
}
finally
{
readNextWord();
}
}
public bool hasNextDouble()
{
if (currentWord == null)
return false;
double dummy;
return double.TryParse(currentWord, out dummy);
}
public double nextDouble()
{
try
{
return double.Parse(currentWord);
}
finally
{
readNextWord();
}
}
public bool hasNext()
{
return currentWord != null;
}
}