
当我们要对这些超大数进行比较排序时,如果我们用int或long基本数据类型时,会超出能承载的范围,因此我们选择用引用数据类型:BigDecimal或BigInteger。
区别在于基本数据类型直接比较大小,而是调用这个类里的方法进行比较大小
- import java.math.BigDecimal;
- import java.util.Scanner;
-
- public class Main {
- public static void main(String[] args) {
- int n;
- Scanner scanner=new Scanner(System.in);
- n=scanner.nextInt();
- BigDecimal max= BigDecimal.valueOf(0);//将最大票数和总票数设置为BigDecimal类型
- BigDecimal sum;
- int number=0;
- for(int i=0;i
- sum=scanner.nextBigDecimal();
- max= max.max(sum);//用BigDecimal类里的方法max
- if(max==sum){
- number=i+1;
- }
- }
- System.out.println(number);
- System.out.print(max);
- }
-
- }
法二:用BigInteger4
- import java.math.BigInteger;
- import java.util.Scanner;
-
- public class Main {
- public static void main(String[] args) {
- Scanner scanner=new Scanner(System.in);
- int n=scanner.nextInt();
- BigInteger max= BigInteger.valueOf(0);
- BigInteger sum;
- int number = 0;
- for(int i=0;i
- sum=scanner.nextBigInteger();
- if(max.compareTo(sum)==-1){//直接用compareTo方法比较,如果为-1则说明sum更大
- max=sum;
- number=i+1;
- }
- }
- System.out.println(number);
- System.out.print(max);
- }
- }
知识总结:
BigInteger:
- java中可以使用BigInteger操作大整数,也可以转换进制。如果在操作的时候一个整型数据已经超过了整数的最大类型长度long的话,则此数据就无法装入,所以,此时要使用BigInteger类进行操作。这些大数都会以字符串的形式传入。
法三:把数字当成字符串类型,用字符串里的compareTo方法比较大小
- import java.util.Scanner;
-
- public class Main {
- public static void main(String[] args) {
- int n;
- Scanner scanner=new Scanner(System.in);
- n= scanner.nextInt();
- String max="";
- int number=0;
- for(int i=0;i
- String str=scanner.next();
- if(str.length()>max.length()||str.length()==max.length()&&str.compareTo(max)>0){
- max=str;
- number=i+1;
- }
- }
- System.out.println(number);
- System.out.print(max);
- }
- }
-
相关阅读:
x86游戏逆向之实战游戏线程发包与普通发包的逆向
jmeter压力测试工具,雪崩效应,容错组件Sentinel
微服务(二)——SpringCloud入门&项目搭建
ConcurrentHashMap为什么不允许插入null值?
使用SpringBoot定时设置Ubuntu编码为UTF8
ElementUI表格el-table自适应高度(表头表尾固定不动)
【python中级】通过ISAPI协议接口获得海康IPC云台的PTZ
两个有序表的合并(三种方法)
【学习笔记】深度学习入门:基于Python的理论与实现-Python入门与感知机
MySQL中最左匹配相关实践总结
-
原文地址:https://blog.csdn.net/m0_73866527/article/details/133491219
-
最新文章
-
沪漂五周年了:我越来越迷茫了
Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
MySQL-Seconds_behind_master的精度误差
[MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
Agent OS :五种驯服不确定性的范式
PortSwigger SQL注入LAB11
数据库即时编译JIT
[Begin]AI Learn Data Day 0
深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU