首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >java scanner构造函数_使用Scanner作为构造函数的参数的Java

java scanner构造函数_使用Scanner作为构造函数的参数的Java

作者头像
用户7886150
修改于 2021-04-26 09:42:57
修改于 2021-04-26 09:42:57
3.4K0
举报
文章被收录于专栏:bit哲学院bit哲学院

参考链接: Java Scanner仪类

这是一个学校任务的问题,这就是为什么我这样做的原因。使用Scanner作为构造函数的参数的Java

 总之,我在主要方法(Scanner stdin = new Scanner(System.in);是行)中使用Stdin制作扫描仪,从程序运行时指定的txt中读取数据。这种扫描仪按预期工作为主,不过,我需要用它在具有扫描仪作为参数的自定义类:

 public PhDCandidate(Scanner stdin)

 {

 name = stdin.nextLine();

 System.out.println(name); //THIS NEVER RUNS

 preliminaryExams = new Exam[getNumberOfExams()];

 for(int i = 0; i <= getNumberOfExams(); i++)

 {

 preliminaryExams[i] = new Exam(stdin.nextLine(), stdin.nextDouble());

 }

 System.out.print("alfkj");

 }

 此时扫描仪的任何调用将刚刚结束程序,没有例外或抛出的错误。只有调用.next()的作品。我可以让程序工作,但这会很冒险,我真的不明白发生了什么。我怀疑我错过了一个非常简单的概念,但我迷路了。任何帮助,将不胜感激。

 +1

 ”此时,Scanner的任何调用都将结束程序,不会抛出异常或错误。“究竟在什么时候?程序在哪里结束? –

 +1

 我不认为你的程序实际终止。我认为你的控制台正在等待输入。尝试在控制台上输入一些名称。 –

 +0

 @ Code-Guru:只要我尝试使用扫描器(除了stdin.next(),所有其他方法都会中断),就会结束,所以立即尝试使用.nextLine() –

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
nextline函数_在JAVA中Scanner中的next()和nextLine()为什么不能一起使用?
Java 输入一直是一个坑,本来一直用 Scanner,但一直搞不懂换行符啥的,就用 BufferReader ,但前不久大疆笔试需要持续输入,早忘了 Scanner 怎么写,而那个场景用 Scanner 很好实现 ……
全栈程序员站长
2022/09/05
3.3K0
Java中Scanner用法总结
大家好,又见面了,我是你们的朋友全栈君。 最近在做OJ类问题的时候,经常由于Scanner的使用造成一些细节问题导致程序不通过(最惨的就是网易笔试,由于sc死循环了也没发现,导致AC代码也不能
全栈程序员站长
2022/09/09
5990
Java中的Scanner(详解常见用法)
double nextDouble() , float nextFloat() , int nextInt() 等与nextLine()连用时都存在遗留的换行符影响nextLine()读取输入的问题,解决的办法是:在每一个 next()、nextDouble() 、 nextFloat()、nextInt() 等语句之后加一个nextLine()语句,将被next()去掉的Enter结束符过滤掉。
全栈程序员站长
2022/09/08
6570
Java中Scanner的理解大总结「建议收藏」
Scanner类常用的方法: Scnaner(File file);Scnaner(String filename);创建一个从特定文件扫描的扫描器 hasNext();还有可读取的书库返回true next();返回下一个标志作为字符串 nextLine();使用行分隔符从这个扫描器返回一个行结束 nextByte();nextshort();nextInt();nextLong();nextFloat();nextDouble();分别返回一个对应类型的值 useDelimiter(string pattern);设置这个扫描器的分割模式并返回这个扫描器 一,从控制台输入 当通过new Scanner(System.in)创建一个Scanner,控制台会一直等待输入,直到敲回车键结束,把所输入的内容传给Scanner,作为扫描对象。如果要获取输入的内容,则只需要调用Scanner的nextLine()方法即可
全栈程序员站长
2022/09/09
7370
Java之Scanner
Scanner 使用分隔符模式将其输入分解为标记,默认情况下该分隔符模式与空白匹配。然后可以使用不同的 next 方法将得到的标记转换为不同类型的值。
用户5224393
2019/08/20
7800
java之Scanner详解「建议收藏」
Scanner reader=new Scanner(System.in);
全栈程序员站长
2022/09/09
6460
Java 基础教学:流程控制-Scanner 用法
Java中的Scanner类是一个非常强大的工具,用于解析原始类型和字符串的文本扫描器。它可以解析基于特定的分隔模式(默认情况下是空格)的原始输入,并将字符转换为不同类型的值。以下是Scanner类在获取用户输入方面的详细介绍和用法。
世间万物皆对象
2024/10/25
2950
java中Scanner类nextLine()和next()的区别和使用方法
在实现字符窗口的输入时,很多人更喜欢选择使用扫描器Scanner,它操作起来比较简单。在编程的过程中,我发现用Scanner实现字符串的输入有两种方法,一种是next(),一种nextLine(),但是这两种方法究竟有什么区别呢?我查了一些资料总结了一下,希望对大家有所帮助~
全栈程序员站长
2022/07/01
7500
java中scanner意思_Java中的Scanner
Scanner对象是一个简单的文本扫描仪,**可以使用正则解析文本字符串**。我们使用Scanner最多的地方可能就是读取键盘输入,但是Scanner的功能远比此强大。对于Scanner的进一步理解还是在LeetCode的一道算法题上,题目大意是输入一组分式加法构成的字符串,要求输出分式相加的结果。首先是输入”-2/3+2/3-4/5″,接着求其和。首先第一步需要解析字符串为所需的数据,我使用了split()的方式,有位大哥就使用了`scanner.useDelimiter(pattern)`方法,直接将数据解析到了Scaner对象中。
全栈程序员站长
2022/09/08
2.6K0
Java Scanner 类
Java Scanner 类是 Java 中一个用于读取用户输入的类,它可以从标准输入、文件、字符串等多种输入源中读取数据,并将数据转换为 Java 中的各种数据类型。
久绊A
2023/03/24
4640
Java中Scanner类的用法
      Java 5添加了java.util.Scanner类,这是一个用于扫描输入文本的新的实用程序。它是以前的StringTokenizer和Matcher类之间的某种结合。由于任何数据都必须通过同一模式的捕获组检索或通过使用一个索引来检索文本的各个部分。于是可以结合使用正则表达式和从输入流中检索特定类型数据项的方法。这样,除了能使用正则表达式之外,Scanner类还可以任意地对字符串和基本类型(如int和double)的数据进行分析。借助于Scanner,可以针对任何要处理的文本内容编写自定义的语法分析器。
Twcat_tree
2022/12/05
8440
Java基础入门笔记03——用户交互Scanner类,程序三大结构,反编译,增强for,Java中没有goto
以检测到用户输入的空格为结束符,但是一定要读取到有效字符才可以结束,也就是刚开始遇到的空格就会抛弃,而中间遇到空格才会停止。
全栈程序员站长
2022/09/21
5600
Java基础入门笔记03——用户交互Scanner类,程序三大结构,反编译,增强for,Java中没有goto
java scanner输入数组_java基础- scanner/方法/数组
public static void main(String[] args) {
全栈程序员站长
2022/09/13
1.2K0
Java中的Scanner用法解析
一、Scanner类简介 Java 5添加了java.util.Scanner类,这是一个用于扫描输入文本的新的实用程序。 简介 Scanner类是java.util包中的一个类 作用 常用于控制台的输入,当需要使用控制台输入时即可调用这个类 二、Scanner类的用法 使用方法 1、首先需要构造一个Scanner类的对象,并且与标准输入流System.in关联 Scanner sc=new Scanner(System.in); 2、调用Scanner类对象sc的方法从输入流中获取你需要的输入 说明: 当创建了一个Scanner类对象之后,控制台会一直等待输入,直到敲回车键结束,把所输入的内容传给对象sc,若要获取需要的内容,调用sc的方法即可 三、常用方法 1、nextInt()只读取数值,读取完后\n没有读取并且光标放在本行 Scanner sc=new Scanner(System.in); int i=sc.nextInt(); 每次可以只输入一个数字,回车确认,例如:“123”,只能被一个nextInt读取。 也可以输入一组数字,例如:“123 456 789”,每个数字之间用空格(一个或多个空格)隔开,可被多个nextInt()读取,空格及回车不会被读取。(注:输入数字中不能夹杂除数字、空格、回车之外的其他字符,否则会报错)
全栈程序员站长
2022/09/08
1.2K0
Java中的Scanner用法解析
【JAVA-Day40】scanner在java中的用法
在本篇技术博客中,将以博主身份深入研究Scanner类在Java中的多种应用方式。Scanner是Java编程中不可或缺的工具,我们将详细讨论它的定义、使用方法、丰富的功能集,以及如何应对面试中的相关问题。此外,为了让这篇文章更生动,我们将加入一些小表情来提升阅读乐趣。如果你想全面了解Scanner类,不妨继续往下阅读。
默 语
2024/11/20
2320
【JAVA-Day40】scanner在java中的用法
语法笔记_J2SE_Scanner控制台读入
Double类型的 double testDouble = sc.nextDouble();
陈黎栋
2020/02/18
6660
【JavaSE专栏40】Java常用类 Scanner 解析,C++能输入的数据,Java也能
本文讲解了 Java 中常用类 Scanner 的语法、使用说明和应用场景,并给出了样例代码。
Designer 小郑
2023/08/02
2890
【JavaSE专栏40】Java常用类 Scanner 解析,C++能输入的数据,Java也能
Java中Scanner 的用法/ Scanner怎么使用
Java中要想输入时便要用到Scanner 首先在使用之前导入util包 要想通过控制台进行输入,首先要构造一个Scanner对象,它附属于”标准输入流 Scanner in = new Scanner(System.in); 现在我们就可以使用Scanner类的各种方法了 使用Scanner读取字符串/整数/浮点数
全栈程序员站长
2022/09/09
1.2K0
java中Scanner用法
这里如果输入hello world就只会输出hello,中间的空格以及后面的内容都不能输出。
全栈程序员站长
2022/09/08
5100
java中Scanner用法
java Scanner的用法
{tabs-pane label="关于nextInt()、next()和nextLine()的用法"} nextInt():nextInt()只读取数值,剩下"n"还没有读取,并将Scanner类读取依靠的cursor放在数值后面,"n"前面,因此如果用nextInt()读取后,再用nextLine()读取,读取到的是换行符。 next():next()只读空格之前的数据,并且cursor指向本行next() 方法遇见第一个有效字符(非空格,非换行符)时,开始扫描,当遇见第一个分隔符或结束符(空格或换行符)时,结束扫描,获取扫描到的内容,即获得第一个扫描到的不含空格、换行符的单个字符串。方法读取到空白符就结束 nextLine():则可以扫描到一行内容并作为一个字符串而被获取到,结束以“r”回车结束;
await
2021/09/09
4860
相关推荐
nextline函数_在JAVA中Scanner中的next()和nextLine()为什么不能一起使用?
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档