java方法過載實驗:判斷鍵盤輸入的兩個資料的型別後進行比較
實驗內容:
使用java語言程式設計,實現鍵盤錄入兩個資料,比較兩個數是否相等(採用方法呼叫方式),輸出比較結果;
提高:對實現數字比較的方法進行過載,使之適應int、float、double、short型別的比較。
思路梳理:
接收鍵盤輸入採用Scanner物件,在不確定輸入資料的型別前將輸入資料儲存到String中,然後採用instanceof判斷輸入資料的型別;
過載的比較方法由四個,引數個數為2,引數型別分別為:int、float、double、short
程式碼實現:(TODO部分可根據需要進行完善)
package test;
import java.util.Scanner;
/**
* 鍵盤錄入兩個資料,比較兩個數是否相等;
* 提高:對比較方法進行過載,使之適應int,float,double,short型別的比較
*
* @author jntcf
* */
public class HelloWorld {
public static void main(String[] args) {
Scanner sc = new Scanner (System.in);
System.out.println("請輸入第一個數");
String s1 = sc.next();
System.out.println("請輸入第二個數");
String s2 = sc.next();
boolean isNum = false; //用於標記輸入的資料是否能確定型別,進行比較
//判斷輸入的資料是否為int型,此處只選取了第一個輸入進行檢查
//TODO :繼續完善,1)增加對第二個輸入型別的檢查;
// 2)進一步界定是否為short型別
try {
Integer iCheckValue = Integer.parseInt(s1);
if (iCheckValue instanceof Integer == true) {
isNum = true;
System.out.println("資料型別:int");
compareTwoNum(Integer.parseInt(s1),Integer.parseInt(s2));
}
}
catch(NumberFormatException e) {
System.out.println("資料型別不是int...");
}
//判斷輸入的資料是否為double型,此處只選取了第一個輸入進行檢查
//TODO: 繼續完善,1)增加對第二個輸入型別的檢查;
// 2)進一步界定是否為float型別
try {
Double dCheckValue = Double.parseDouble(s1);
if (dCheckValue instanceof Double == true) {
isNum = true;
System.out.println("資料型別:double");
compareTwoNum(Double.parseDouble(s1),Double.parseDouble(s2));
}
}
catch(NumberFormatException e) {
System.out.println("資料型別不是double...");
}
if (!isNum)
System.out.println("未知的資料型別, 請檢查輸入!!!");
sc.close();
}
// TODO: 將比較方法的返回值型別設定為boolean
// 在main函式中呼叫時,根據方法的返回值輸出本次比較的結果
public static void compareTwoNum(float a, float b) {
if(a < b) {
System.out.println("【float】a < b");
}else {
System.out.println("【float】a >= b");
}
}
public static void compareTwoNum(double a,double b) {
if(a < b) {
System.out.println("【double】a < b");
}else {
System.out.println("【double】a >= b");
}
}
public static void compareTwoNum(short a,short b) {
if(a < b) {
System.out.println("【short】a < b");
}else {
System.out.println("【short】a >= b");
}
}
public static void compareTwoNum(int a,int b) {
if(a < b) {
System.out.println("【int】a < b");
}
else {
System.out.println("【int】a >= b");
}
}
}
相關推薦
java方法過載實驗:判斷鍵盤輸入的兩個資料的型別後進行比較
實驗內容: 使用java語言程式設計,實現鍵盤錄入兩個資料,比較兩個數是否相等(採用方法呼叫方式),輸出比較結果; 提高:對實現數字比較的方法進行過載,使之適應int、float、double、short型別的比較。 思路梳理: 接收鍵盤輸入採用Scanner物件,在不確
彙編——從鍵盤輸入兩個字串,用串操作指令判斷是否相等
本文的程式碼示例是從鍵盤輸入兩個字串,然後藉助串操作指令 CMPSB 進行判斷。 CMPSB 指令的功能:用DS:[SI]所指的位元組單元內容減去ES:[DI]所指位元組單元內容,並且根據指令執行結果設定標誌位,然後根據DF的內容修改變址暫存器SI和DI的內容。若DF=,0,則根據串
Java方法遍歷一次數組返回兩個結果(最大值與最小值)
遍歷 get urn 個數 gets IV 限定 null int 使用內部類來存儲要返回的結果即可實現返回多個參數 使用泛型並限定類型必須實現Comparable接口,實現重用 使用T...a實現傳入不定量個數的數組 public class ArrayAlg{
Python 等待鍵盤輸入input(),資料型別轉換int() float() str()
demo.py: # 變數名 = input("提示資訊:") # 等待鍵盤輸入。(輸入的內容都是字串型別) # 1. 輸入蘋果的單價。 price_str = input("蘋果的單價:") # 2. 輸入蘋果的重量 weight_str = input("蘋果的重
適用於判斷使用者輸入多個相同型別的資訊,是否重複(如多個身份證號是否重複)
checkRepeat: function (arr) { let arrlist = []; let list = []; let str = ''; for (let i = 0; i < arr.length; i++) {
深入思考:java如何求兩個資料型別為int的數的平均數
一 . 遇到的問題: 我最初通過eclipse軟體設計如下方法: public static double foraverage(int a,int b) { double c=(double)(a+b)/2; return
安卓客戶端開發:XML和JSON兩種資料交換格式的比較
最近想給網站做客戶端,因此在考慮到底是用xml還是Json的問題,剛好在網上讀到了這篇文章。 目前,在web開發領域,主要的資料交換格式有XML和JSON,對於XML相信每一個web developer都不會感到陌生;相比之下,JSON可能對於一些新步入開發領
實驗long raw 和 blob兩種資料型別遇到dblink的表現
首先long raw從Oracle 10g開始就不再被建議使用,建議用blob代替。同理,long建議用clob代替。 本文從運維角度實驗long raw 和 blob兩種資料型別在遇到dblink時的一些差異。 1.構造實驗環境 在A庫jingyu使用者下建立兩張表: --LONG RAW create
實現從命令列引數輸入兩個字串型別的數值,並計算輸出兩個數值的和。 [必做題]
import java.io.UnsupportedEncodingException; import java.util.Scanner; public class ZiFuChuanHe { public static void main(String[] args) throws
C語言中用scanf連續輸入兩個字元型別的問題
今天上網查了下才知道,原來scanf是從標準輸入緩衝區中讀取輸入的資料,而%c的字元輸入格式會接收回車字元,在輸入第一個scanf時輸入字元後按 回車結束,輸入緩衝中儲存了這個回車符,遇到第二個scanf時,它自動把這個回車符賦給了ch2。而如果第二個scanf的輸入格式不是%c時,由於格 式不匹配,
javascript中怎麼判斷兩個資料型別相等
在 JavaScript 中,判斷一個變數的型別嚐嚐會用 typeof 運算子,在使用 typeof 運算子時採用引用型別儲存值會出現一個問題,無論引用的是什麼型別的物件,它都返回 "object"。 所以怎麼才能判斷兩個型別相等呢? instanceof 來解決這個問題。instanceof 運算子與 ty
Java:用鍵盤輸入個人信息並輸出
新手練習package 課堂練習;// 包的申明import java.util.*; //導入Java.util的所有類/** Created by Administrator on 2018/4/17 0017.*/ /鍵盤輸入個人簡歷並輸出 2018.4.17 V.1*/public cla
JAVA實驗四:從鍵盤錄入若干個學生的姓名和分數
題目 編寫一個程式,使用者可以從鍵盤錄入若干個學生的姓名和分數(程式每次提示使用者輸入“Y”或“N”決定是否繼續錄入學生資訊,如果使用者輸入“N”則使用者輸入完畢。輸入的“Y”、“N”不區分大小寫)。使用者錄入完畢後,程式按成績由高到低的順序輸出學生的姓名和分數(姓名和分數之間用一個空格分割
C++:從鍵盤輸入一個整數,判斷該數是幾位數,並且逆向輸出該數字
#include using namespace std; int change(int n) //逆向輸出該數 {int rn; for(int i=0;i<10;i++) { if(n>0) { rn=rn*10+n%10; n=n/10;
java--封裝一類Java物件,使用者從輸入對話方塊輸入兩個日期,程式將判斷兩個日期的大小關係(比如輸出:您輸入的第二個日期大於第一個日期)以及兩個日期之間的間隔天數(比如輸出:2006年6月6日和
import java.util.*; public class Date { int year; int month; int day; public Date() {
Java Scanner實現判斷鍵盤輸入內容
/** * 掃描流 * @author liuhuiyan * */ public class TestScanner { public static void main(String[] args) throws Exception{
2. 編寫一個Java應用程式,使用者從鍵盤輸入一個1~9999之間的數,程式將判斷這個數是幾位數,並判斷這個數是否是迴文數。迴文數是指將該數含有的數字逆序排列後得到的數和原數相同,例如12121、32
import javax.swing.JOptionPane; public class TestNumber { public static void main(String args[]) { loopNumber
初學java:從鍵盤輸入字串,並統計其中數字字元的個數
import java.util.Scanner; public class Test {public static void main(String[] args) {String s=null;int count = 0;Scanner in=new Scanner(System.in);System.o
Java之工具類:判斷對象是否為空或null
sar 判斷 ins == span urn lean color style 1 import java.lang.reflect.Array; 2 import java.util.Collection; 3 import java.util.Map; 4
菜雞的Java課筆記 第九 接收鍵盤輸入
package mysterious; import java.util.Scanner; public class lianxi { public static void hhh (){ Scanner b = new Scanner(System.in);