如何解决二元运算符的这种错误操作数类型
How to solve this this bad operand types for binary operator
import java.io.*;
import java.util.*;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
for(int i=1;i < sc.hasNext();i++){
System.out.print(i+sc.nextLine());
}
}
}
Solution.java:10: error: bad operand types for binary operator '<'
for(int i=1;i < sc.hasNext();i++){
^
first type: int
second type: boolean
1 error
hasNext()
方法 returns 如果此扫描器在其输入中有另一个标记则为真,否则如果它没有更多标记则它 returns 为假。而且我们无法将 int
与 boolean
进行比较。因此,使用 hasNext()
作为终止条件就足够了。
import java.io.*;
import java.util.*;
class Solution
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
for (int i=1;sc.hasNext();i++)
{
System.out.print(i+sc.nextLine());
}
/** ALT:
int i = 1;
while (sc.hasNext())
{
System.out.print(i+sc.nextLine());
}
**/
}
}
import java.io.*;
import java.util.*;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
for(int i=1;i < sc.hasNext();i++){
System.out.print(i+sc.nextLine());
}
}
}
Solution.java:10: error: bad operand types for binary operator '<'
for(int i=1;i < sc.hasNext();i++){
^
first type: int
second type: boolean
1 error
hasNext()
方法 returns 如果此扫描器在其输入中有另一个标记则为真,否则如果它没有更多标记则它 returns 为假。而且我们无法将 int
与 boolean
进行比较。因此,使用 hasNext()
作为终止条件就足够了。
import java.io.*;
import java.util.*;
class Solution
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
for (int i=1;sc.hasNext();i++)
{
System.out.print(i+sc.nextLine());
}
/** ALT:
int i = 1;
while (sc.hasNext())
{
System.out.print(i+sc.nextLine());
}
**/
}
}