java輸入值
『壹』 如何在java中輸入變數的值
java程序的類型分為控制台程序、桌面應用程序、Web程序,你所指的輸入變數的值應該是控制台程序,一般有兩種方法。
第一種:使用Scanner類
Scanner scanner=new Scanner(System.in);
scanner.nextXXX(); //有許多方法可以接受輸入的值。
第二種:使用BufferedReader類
BufferedReader br=new BufferedReader(new InputStreamReader(System.in)
String s=br.readLine(); //接受輸入的值。
『貳』 java 數組怎麼輸入值
int[] array = new int[10];//數組長度為10
for(int i=0;i<array.length;i++){
array[i] = i; //這里也可以用鍵盤輸入語句,如果用鍵盤輸入語句就要閑定義輸入流BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); 定義流在循環外面定義,然後array[i] = Integer.parseInt(br.readLine(); 這樣就可以了。
}
這樣就用循環把數組初始化了!
『叄』 java中怎麼從鍵盤上給變數輸入值
調用javax.swing.JOptionPane類實現,如下圖:
『肆』 java怎麼輸入數據
1
java的Scanner類提供了nextInt、nexFloat、nextDouble等方法,可以像類似C語言的scanf那樣讀取指定類型的數字。
首先定義一個Scanner對象:
Scanner sn = new Scanner(System.in);
java怎麼輸入數字
2
用sn.nextInt讀取整型數,注意如果輸入的不是整形數則該函數會拋出InputMismatchException異常,應予以捕獲。
System.out.print("請輸入一個整數:"); try{ intVal = sn.nextInt(); System.out.println("你輸入了:" + intVal); }catch(InputMismatchException e) { System.out.println("必須輸入整數!"); }
java怎麼輸入數字
3
用sn.nextFloat讀取單精度浮點數,如果輸入的不是數字則也會拋出InputMismatchException異常,應予以捕獲。
System.out.print("請輸入一個浮點數:"); try{ floatVal = sn.nextFloat(); System.out.println("你輸入了:" + floatVal); }catch(InputMismatchException e) { System.out.println("必須輸入數!"); }
java怎麼輸入數字
4
用sn.nextDouble讀取雙精度浮點數,操作與單精度類似。
System.out.print("請輸入一個浮點數:"); try{ doubleVal = sn.nextDouble(); System.out.println("你輸入了:" + doubleVal); }catch(InputMismatchException e) { System.out.println("必須輸入數!"); }
java怎麼輸入數字
5
流使用完畢後應予以關閉:sn.close();完整代碼如下圖。
java怎麼輸入數字
java怎麼輸入數字
6
測試程序,首先正常輸入,可以看到沒輸入一個數,控制台會進行回顯。
java怎麼輸入數字
7
接下來試試異常情況,在要求輸入整數時輸入小數,則會提示「必須輸入整數」,在輸入浮點數時輸入字母,則會提示「必須輸入數」,雖然操作非法,程序依然可以執行,這是捕獲了異常的緣故。
『伍』 java怎樣設置用戶輸入的數值
現在一般都用
java.util.Scanner
原始一點的用
java.io.InputStream
Scanner使用比較簡單 InputStream使用還有捕獲異常
class a
{
public static void main(String [] args)
{
int x,y,z,t=0;
System.out.println("請輸入三個數字:\n");
java.util.Scanner sc =new java.util.Scanner(System.in);
x = sc.nextInt();
y = sc.nextInt();
z = sc.nextInt();
if(x<y)
{t=x;x=y;y=t;}
if(x<z)
{t=x;x=z;z=t;}
if(y<z)
{t=y;y=z;z=t;}
System.out.println("從大到小:");
System.out.println(x + " " + y + " " + z);
}
}
『陸』 在Java中使用鍵盤輸入數據的幾種方法
在Java中不像C語言中那麼方便直接使用scanf(),下面是我積累的一些方法:
1.控制台輸入數據
1.1 主方法的形式參數
1.2 利用位元組輸入流
1.3 利用字元輸入流
1.4 利用文本掃描類
2. 對話框輸入數據
下面將針對這幾種方法分別利用例子進行說明:
1. 控制台輸入數據
1.1 主方法的形式參數
在Java中利用main(String args[])中的args數組來對參數進行賦值,有下例:
package InputTest;
public class DataKeyboardInput1 {
/**主方法的形式參數來輸入數據
* DataKeyboardInput1.java
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println(args[0]);
}
}
在命令行下輸入javac DataKeyboardInput1.java --》Java DataKeyboardInput1 HelloWorld 輸出就是 HelloWorld 了
1.2 利用位元組輸入流
位元組輸入流System.in 是類InputStream的常量對象,調用read()方法可以從鍵盤接收數據。實現的步驟是:先把數據讀入位元組數組中,然後利用位元組數組定義字元串,最後把字元串轉化為需要的數據類型。
package InputTest;
import java.io.*;
public class DataKeyboardInput2 {
/**利用位元組輸入流來輸入數據
* DataKeyboardInput2.java
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
byte buf[]=new byte[10]; //位元組數組,輸入為10個
String str;
int num = 0;
try{
//把數據讀入到位元組數組中
System.in.read(buf);
//利用位元組數組創建字元串
str=new String(buf,0);
//把字元串數據轉換為整型數據
num=Integer.parseInt(str.trim());
}catch(Exception e){
System.out.print(e);
}System.out.println(num);
}
}
1.3 利用字元輸入流
字元輸入流BufferedReader是從字元輸入流中讀取文本,緩沖各個字元,從而提供字元,數組和行的高效讀取。常用方法:
read(): 讀取單個字元; readLine():讀取一行字元,即為讀取一個字元串
package InputTest;
import java.io.*;
public class DataKeyboardInput3 {
/**利用字元輸入流來進行輸入處理
* @param args
*/
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
String str="";
int num = 0;
try{
str=br.readLine();
num=Integer.parseInt(str);
}catch(IOException e){
System.out.println(e.toString());
}System.out.println(num);
}
}
1.4 利用文本掃描類
文本掃描類Scanner是jdk5.0新增加的類,它是一個可以使用正則表達式來解析基本類型和字元串的簡單文本掃描器,它使用分隔符模式將其輸入分解為標記默認情況下該分隔符模式與空白匹配,然後使用不同的next方法將得到的標記轉換為不同類型值。獲取基本類型數據的方法是:
整型:nextInt() 單精度:nextFloat() 雙精度: nextDouble() 字元串: next()
package InputTest;
import java.util.Scanner;
public class DataKeyboardInput4 {
/**利用文本掃描類來進行輸入處理
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input=new Scanner(System.in);
int num=input.nextInt();
System.out.println(num);
}
}
2. 對話框輸入數據
使用JOptionPane創建輸入對話框,實現鍵盤輸入
showConfirmDialog(): 詢問一個確認問題,如yes/no/cancer
showInputDialog(): 提示要求某些輸入
showMessageDialog(): 告知用戶某事已經發生
其中,輸入對話框的常用參數形式有:
showInputDialog(Object message) : message 表提示信息
showInputDialog(Object message,Object initialSelectionValue): 如果沒有輸入數據,則默認初始值為initalSlectionValue
package InputTest;
import javax.swing.JOptionPane;
public class DataInputDialog {
/**對話框輸入數據
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String str;
str=JOptionPane.showInputDialog("input data:");
int num=Integer.parseInt(str);
System.out.println(num);
}
}
『柒』 java如何從鍵盤輸入變數值,請列出各種數據類型的輸入方法
你好,這個可不能類推哦。
char c = (char) i ;
boolean的取值有false和true.
『捌』 java如何輸入數據
java輸入數據,可以使用Scanner類,例子如下:
Scanner in = new Scanner(System.in);//定義scanner,等待輸入
System.out.println("請輸入你的姓名:");
String name = in.nextLine();//字元類型的輸入方式
System.out.println(name);
『玖』 java如何輸入一個整數
可以通過」Scanner「函數 直接輸入參數的形式,來實現輸入語句,舉例:
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
System.out.println("請輸入一個整數:");
int length=input.nextInt();//輸入一個整數
System.out.println("輸入的整數是:"+length);}
}
備註:Scanner函數就是用來進行語句輸入的,上面舉例的是整數類型,也可以用以下語句「String length=input.next()」,輸入的就是字元串類型等。
判斷是否為整數的方法:
方法一
package homeWork;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Test2 {
public static void main(String[] args) {
BufferedReader bReader = null;
bReader = new BufferedReader(new InputStreamReader(System.in));
try {
String line = null;
int sum = 0;
for (int i = 0; i < 2; i++) {
System.out.println("請輸入第" + (i + 1) + "整數");
// 獲取鍵盤輸入的數據
line = bReader.readLine();
// 判斷是否是數字
if (line.matches("[0-9]+")) {
// 將數字字元串轉成Integer類型
sum += Integer.parseInt(line);
} else {
i--;
continue;
}
}
System.out.println(sum);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
// 方法二
package homeWork;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Test3 {
public static void main(String[] args) {
int sum = 0;
int count = 0;
String line = null;
BufferedReader bReader = null;
do {
System.out.println("請輸入第 " + (count + 1));
// 創建緩沖字元輸入流,從鍵盤輸入數據
bReader = new BufferedReader(new InputStreamReader(System.in));
try {
// 獲取數據
line = bReader.readLine();
// 判斷是否是整數
if (line.matches("[0-9]+")) {
sum += Integer.parseInt(line);
count++;
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// 判斷數據個數是否滿足需求
} while (count < 2);
System.out.println("兩個整數之和為:" + sum);
try {
if (bReader != null) {
bReader.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
『拾』 java中文本輸入值的問題
如果不再文本框中輸入任何值,value2會得到什麼值?
--->拋出: NumberFormatException , value2沒有任何值
用什麼方法可以拒絕文本框中輸入除數字外的其它值或輸入其它值後怎麼驗證不是數字?
可以用正則表達式,或者
try{
double value2 = Double.parseDouble(field2.getText());
}catch(NumberFormatException exp){
System.out.println("輸入不合法,必須是數字");
}