代碼如下:
創(chuàng)新互聯(lián)公司網(wǎng)絡(luò)公司擁有十年的成都網(wǎng)站開發(fā)建設(shè)經(jīng)驗(yàn),成百上千客戶的共同信賴。提供成都網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)站開發(fā)、網(wǎng)站定制、買鏈接、建網(wǎng)站、網(wǎng)站搭建、響應(yīng)式網(wǎng)站、網(wǎng)頁(yè)設(shè)計(jì)師打造企業(yè)風(fēng)格,提供周到的售前咨詢和貼心的售后服務(wù)
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("負(fù)數(shù)個(gè)數(shù):"?+?cnt);
System.out.println("負(fù)數(shù)之和:"?+?sum);
scanner.close();
}
}
運(yùn)行結(jié)果:
import?java.io.BufferedReader;
import?java.io.IOException;
import?java.io.InputStreamReader;
/*
*?System.in?標(biāo)準(zhǔn)輸入流。是從鍵盤獲取數(shù)據(jù)的
*?
*?鍵盤錄入數(shù)據(jù):
*? A:main方法的args接收參數(shù)。
*? java?HelloWorld?hello?world?java
*? B:Scanner(JDK5以后的)
*? Scanner?sc?=?new?Scanner(System.in);
*? String?s?=?sc.nextLine();
*? int?x?=?sc.nextInt()
*? C:通過(guò)字符緩沖流包裝標(biāo)準(zhǔn)輸入流實(shí)現(xiàn)
*? BufferedReader?br?=?new?BufferedReader(new?InputStreamReader(System.in));
*/
public?class?SystemInDemo?{
public?static?void?main(String[]?args)?throws?IOException?{
//?//獲取標(biāo)準(zhǔn)輸入流
//?InputStream?is?=?System.in;
//?//我要一次獲取一行行不行呢?
//?//行。
//?//怎么實(shí)現(xiàn)呢?
//?//要想實(shí)現(xiàn),首先你得知道一次讀取一行數(shù)據(jù)的方法是哪個(gè)呢?
//?//readLine()
//?//而這個(gè)方法在哪個(gè)類中呢?
//?//BufferedReader
//?//所以,你這次應(yīng)該創(chuàng)建BufferedReader的對(duì)象,但是底層還是的使用標(biāo)準(zhǔn)輸入流
//?//?BufferedReader?br?=?new?BufferedReader(is);
//?//按照我們的推想,現(xiàn)在應(yīng)該可以了,但是卻報(bào)錯(cuò)了
//?//原因是:字符緩沖流只能針對(duì)字符流操作,而你現(xiàn)在是字節(jié)流,所以不能是用?
//?//那么,我還就想使用了,請(qǐng)大家給我一個(gè)解決方案?
//?//把字節(jié)流轉(zhuǎn)換為字符流,然后在通過(guò)字符緩沖流操作
//?InputStreamReader?isr?=?new?InputStreamReader(is);
//?BufferedReader?br=?new?BufferedReader(isr);
BufferedReader?br?=?new?BufferedReader(new?InputStreamReader(System.in));
System.out.println("請(qǐng)輸入一個(gè)字符串:");
String?line?=?br.readLine();
System.out.println("你輸入的字符串是:"?+?line);
System.out.println("請(qǐng)輸入一個(gè)整數(shù):");
//?int?i?=?Integer.parseInt(br.readLine());
line?=?br.readLine();
int?i?=?Integer.parseInt(line);
System.out.println("你輸入的整數(shù)是:"?+?i);
}
}
那個(gè)是帶緩沖功能的字符流讀入,你可以用更簡(jiǎn)單的:
System.in.read()去接收輸入的東西.
char a=(char)System.in.read();
但每次只能接收一個(gè)字節(jié).
用循環(huán)去處理多個(gè)的情況吧.
那么寫不對(duì),照你的寫法要改成這樣:
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("輸入第一個(gè)數(shù):");
a=Integer.parseInt(br.readLine());
System.out.println("輸入第二個(gè)數(shù):");
b=Integer.parseInt(br.readLine());
c=a+b;
System.out.println("The result is: "+c);
}
}
scanner input = new scanner(System.in);是創(chuàng)建scanner這個(gè)對(duì)象 并且命名為input而int stb = input.nextDouble();是以double數(shù)據(jù)類型接收控制臺(tái)輸入,所以這個(gè)語(yǔ)句有問(wèn)題,應(yīng)該改成int stb = input.nextInt(); 而從控制臺(tái)接收String型時(shí) 應(yīng)該是 String gander = input.next();不需要加其他 如果接收Double的就是 double gander = input.nextDouble();