新网创想网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
代码如下:
创新互联公司网络公司拥有十年的成都网站开发建设经验,成百上千客户的共同信赖。提供成都网站建设、网站制作、网站开发、网站定制、买链接、建网站、网站搭建、响应式网站、网页设计师打造企业风格,提供周到的售前咨询和贴心的售后服务
import java.util.Scanner;
public class App {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = 0, cnt = 0, sum = 0;
for (int i = 0; i 10; i++) {
n = scanner.nextInt();
if (n 0) {
cnt++;
sum += n;
}
}
System.out.println("负数个数:" + cnt);
System.out.println("负数之和:" + sum);
scanner.close();
}
}
运行结果:
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/*
* System.in 标准输入流。是从键盘获取数据的
*
* 键盘录入数据:
* A:main方法的args接收参数。
* java HelloWorld hello world java
* B:Scanner(JDK5以后的)
* Scanner sc = new Scanner(System.in);
* String s = sc.nextLine();
* int x = sc.nextInt()
* C:通过字符缓冲流包装标准输入流实现
* BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
*/
public class SystemInDemo {
public static void main(String[] args) throws IOException {
// //获取标准输入流
// InputStream is = System.in;
// //我要一次获取一行行不行呢?
// //行。
// //怎么实现呢?
// //要想实现,首先你得知道一次读取一行数据的方法是哪个呢?
// //readLine()
// //而这个方法在哪个类中呢?
// //BufferedReader
// //所以,你这次应该创建BufferedReader的对象,但是底层还是的使用标准输入流
// // BufferedReader br = new BufferedReader(is);
// //按照我们的推想,现在应该可以了,但是却报错了
// //原因是:字符缓冲流只能针对字符流操作,而你现在是字节流,所以不能是用?
// //那么,我还就想使用了,请大家给我一个解决方案?
// //把字节流转换为字符流,然后在通过字符缓冲流操作
// InputStreamReader isr = new InputStreamReader(is);
// BufferedReader br= new BufferedReader(isr);
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("请输入一个字符串:");
String line = br.readLine();
System.out.println("你输入的字符串是:" + line);
System.out.println("请输入一个整数:");
// int i = Integer.parseInt(br.readLine());
line = br.readLine();
int i = Integer.parseInt(line);
System.out.println("你输入的整数是:" + i);
}
}
那个是带缓冲功能的字符流读入,你可以用更简单的:
System.in.read()去接收输入的东西.
char a=(char)System.in.read();
但每次只能接收一个字节.
用循环去处理多个的情况吧.
那么写不对,照你的写法要改成这样:
import java.io.*;
public class MyApp
{
public static void main(String args[]) throws IOException
{
int a,b,c;
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
System.out.println("输入第一个数:");
a=Integer.parseInt(br.readLine());
System.out.println("输入第二个数:");
b=Integer.parseInt(br.readLine());
c=a+b;
System.out.println("The result is: "+c);
}
}
scanner input = new scanner(System.in);是创建scanner这个对象 并且命名为input而int stb = input.nextDouble();是以double数据类型接收控制台输入,所以这个语句有问题,应该改成int stb = input.nextInt(); 而从控制台接收String型时 应该是 String gander = input.next();不需要加其他 如果接收Double的就是 double gander = input.nextDouble();