导航:首页 > 编程语言 > 比较两个数的大小java

比较两个数的大小java

发布时间:2023-06-02 04:05:44

java比较两个数大小

改:
import java.util.Scanner;

public class CompareTwoNumber1{
double number1,number2;
Scanner scanner;
public CompareTwoNumber1(){
System.out.println("请输入两个数:");
scanner =new Scanner(System.in);
number1=scanner.nextDouble();
number2=scanner.nextDouble();
System.out.println("较大的数是:"+Math.max(number1,number2));
}

public static void main(String args[]){
CompareTwoNumber1 ct=new CompareTwoNumber1();
}
}

Ⅱ Java比较两个数字的大小 两个参数由键盘输入

java 从键盘输入2个数字,比较大小

一:使用Systems.in.read()方法来写

首先分析,System.in.read()方法,该方法从键盘读入一个字符,然后返回它的ASCII码。

	intx=System.in.read();//如果输入1
System.out.println(x);//这里输出1的ASCII码49
System.out.println((char)x);//转换成字符1
intx=System.in.read();
inty=System.in.read();
System.out.println(x+" "+y);//输出1310

因为:我们敲击键盘的回车,比较特殊,对于该方法而言:

相当于输入了两次

第1次时读到的字符其实是回车符 -->转成ASCII码---->13

第2次接受到的是换行符 -->转成ASCII码---->10

	System.out.println((int)'
');//13
System.out.println((int)' ');//10

我们不清楚,用户输入的时候,到底要输入几位数字,那么需要使用死循环来读取。什么时候跳出循环?很简单,前面说了,读取回车代表的字符13 就可以退出循环了。


完善后的代码

importjava.io.IOException;
publicclassTest{
publicstaticvoidmain(String[]args)throwsIOException{
System.out.println("请输入第一个数字");
doublea=getNum();//调用方法读取第一个数字
System.out.println("请输入第二个数字");
doubleb=getNum();//读取第二个数字

if(a>b){
System.out.println(a+">"+b);
}elseif(a<b){
System.out.println(a+"<"+b);
}else{
System.out.println(a+"="+b);
}
}
//该方法用System.in.read()来读取数字
publicstaticdoublegetNum()throwsIOException{
Stringx="";//定义一个字符串,用于拼接用户的输入
while(true){
inta=System.in.read();
if(a==13){//如果是回车符就跳出循环
break;
}
x+=(char)a;//拼接有效的输入
}
returnDouble.parseDouble(x);//从字符串转换到浮点数字
}
}

运行测试

请输入第一个数字
12.5
请输入第二个数字
52.1
12.5<52.1


拓展:从上面可以看出 直接使用System.in.read() 来读取用户的输入,是相当的麻烦。

所以,平常我们利用IO知识, 使用其他流来包装这个底层的流,方便我们读取

importjava.io.BufferedReader;
importjava.io.InputStreamReader;

publicclassTest2{
publicstaticvoidmain(String[]args)throwsException{
//BufferedReader从字符输入流中读取文本,缓冲各个字符,从而实现字符、数组和行的高效读取。
BufferedReaderbr=newBufferedReader(newInputStreamReader(System.in));
Stringx=br.readLine();//每次读取一行,自动摒弃回车符和换行符
doublea=Double.parseDouble(x);//
System.out.println(a);
}
}

当然,还有更简单的,就是利用Scanner扫描器类来实现读取 这也是最常用的方式

importjava.util.Scanner;
publicclassTest3{
publicstaticvoidmain(String[]args){
Scannerinput=newScanner(System.in);
doublea=input.nextDouble();
}
}

Ⅲ JAVA比较2个数大小

你的代码我改了一下
这个应该是符合你的要求的
import java.awt.*;
import java.awt.event.*;

public class ActionEventDemol implements WindowListener{
Frame f = new Frame("ActionEventDemol");
Label msg = new Label("第一个数:",Label.CENTER);
Label msg1 = new Label("第二个数:",Label.CENTER);
Label msg2 = new Label("大的数:",Label.CENTER);
Label msg3 = new Label("",Label.CENTER);

TextField name = new TextField(10);

TextField output = new TextField(10);
Button bConfirm = new Button("确定");
Button bReset = new Button("重置");
Listener lsn = new Listener(this);
public ActionEventDemol(){
f.setLayout(null);
f.add(msg);
f.add(msg2);
f.add(name);
f.add(output);
f.add(bConfirm);
f.add(bReset);
f.add(msg1);
f.add(msg3);
msg.setBounds(20,40,120,10);
msg1.setBounds(20,60,120,10);
msg2.setBounds(20,90,50,10);
msg3.setBounds(30,90,120,10);
name.setBounds(140, 40, 140, 20);
output.setBounds(140, 60,140, 20);
bConfirm.setBounds(40, 110, 70, 20);
bReset.setBounds(190, 110, 70, 20);
f.setSize(300,150);
f.setVisible(true);
bConfirm.addActionListener(lsn);
bReset.addActionListener(lsn);
f.addWindowListener(this);

}
public static void main(String[] args){
new ActionEventDemol();
}

public void windowActivated(WindowEvent e){}
public void windowDeactivated(WindowEvent e){}
public void windowIconified(WindowEvent e){}
public void windowDeiconified(WindowEvent e){}
public void windowOpened(WindowEvent e){}
public void windowClosed(WindowEvent e){}
public void windowClosing(WindowEvent e){
System.exit(0);
}
class Listener implements ActionListener{

ActionEventDemol ob;
Listener(ActionEventDemol ob){
this.ob = ob;
}
public void actionPerformed(ActionEvent e){
if(e.getSource() == ob.bConfirm){
String s1 = name.getText();
String s2 = output.getText();

double d1;
double d2;
try{
d1 =Double.parseDouble(s1);
d2 =Double.parseDouble(s2);

if(d1>d2)
msg3.setText(s1);
else
msg3.setText(s2);
name.setText("");
output.setText("");
}catch (NumberFormatException e1){
msg3.setText("请输入数字");
}
}else if(e.getSource()==ob.bReset){
ob.name.setText("");
}
ob.output.setText("");
}
}
}

Ⅳ java:比较2个数的大小、相等用三目运算的怎么写,麻烦给一些说明,谢谢!

java code: public class Ternary {
public static void compareNum() {
double num1 = 1d;
double num2 = 2d;
double num3 = 3d;
double num4 = 4d;
double maxNum = ((num1>num2 ? num1 : num2)>(num3>num4 ? num3 : num4)) ? (num1>num2 ? num1 : num2) : (num3>num4 ? num3 : num4);
System.out.print("最大值:"+maxNum);
}
}public class Start {
public static void main(String[] arg) {
Ternary.compareNum();
}
} ps:最小值大同小异

Ⅳ java 2个数字比大小 怎么做最有效率

如果仅仅是比较两个数之间的大小的话其实用那种都没什么差别,谈不上最优。如果是比较两个以上的话在for循环里调用Math.Max/Math.min来两两处理,选出最大/最小的与下一个再进行比较,感觉还是满效率的,又或者你先将需要比较的数存进数组里,然后调用java提供的sort方法来处理。

Ⅵ JAVA怎么比较两个数的大小

1、由于设置delimiter为,所以输入的时候每个后面都有一个,即单输入4,5是不行的,需要输入4,5,才会有结果。
2、可以直接使用三目运算符,如c=a>b?a:b;

Ⅶ JAVA怎么用if语句 比较两个数的大小 急!!谢谢!在线等

public class Compare {
public static void main(String[] args) {
int a = 2;
int b = 3;
if (a > b) {
System.out.println("a大于b");
} else {
System.out.println("a小于b");
}
}
}

Ⅷ java问题:判断两个数的大小

importjava.util.Scanner;
publicclasszuoye03_5_2{
publicstaticvoidmain(String[]args){
Scannersc=newScanner(System.in);
System.out.println("---->输入两个数(例如2012):");
intmax=sc.nextInt();/*键盘输入*/
intmin=sc.nextInt();
Stringa;/*定义变量*/
a=(max>min)?"大":"小";
System.out.println(a);/*输出最大值*/
}
}

阅读全文

与比较两个数的大小java相关的资料

热点内容
高三倒计时缓解压力 浏览:619
一捏就变形的解压玩具怎么折 浏览:196
易融贷app借钱怎么 浏览:939
单片机侧重点 浏览:867
江苏惠普服务器虚拟化设计云主机 浏览:647
在欧拉app好猫充电桩怎么申请 浏览:449
反编译代码教程 浏览:798
linuxio阻塞 浏览:973
8脚单片机pic 浏览:821
如何看彩色涂鸦遮住的字安卓 浏览:688
摆渡机器人编程 浏览:654
软程序员着装 浏览:139
宝鸡云存储服务器 浏览:668
推荐超解压游戏无广告 浏览:634
大华服务器怎么添加门禁 浏览:784
战地服务器60hz什么意思 浏览:760
成高级程序员学什么 浏览:501
阿里云接入备案后退掉服务器 浏览:928
ne40e命令 浏览:85
安卓输入法使用什么编码 浏览:184