当前位置: 首页 > news >正文

山西商城网站建设网站推荐货源

山西商城网站建设,网站推荐货源,网站接入服务商,用jsp做网站的体会参考链接#xff1a; Java程序的输出| 18(重写Override) 一道简单程序题#xff1a; 编写一个程序#xff0c;输入学生的姓名、分数信息#xff0c;要求程序按照成绩降序排序后并输出。 实现方法有很多 方法一 public class ScoreSort2 { private String name; pr…参考链接 Java程序的输出| 18(重写Override) 一道简单程序题 编写一个程序输入学生的姓名、分数信息要求程序按照成绩降序排序后并输出。 实现方法有很多 方法一     public class ScoreSort2  { private String name; private long grade; public long getGrade()  { return grade; } public void setGrade(long grade)  { this.grade grade; } public String getName() { return name; } public void setName(String name) { this.name name; } public String toString() { return this.name; } public static void main(String[] args)  { Scanner sc new Scanner(System.in); System.out.println(情输入学生人数:); int num sc.nextInt();  //学生个数 ScoreSort2 message[] new ScoreSort2[num]; //成绩信息的条数 for(int i 0; i message.length; i) { message[i] new ScoreSort2(); System.out.println(请输入第 (i1) 个学生的姓名); String name sc.next(); message[i].setName(name); System.out.println(请输入第 (i1) 个学生的成绩); long grade sc.nextLong(); message[i].setGrade(grade); } System.out.println(统计结果如下:); for(int i 0; i message.length; i) { for(int j i1; j message.length; j) { if(message[i].getGrade() message[j].getGrade()) { ScoreSort2 s new ScoreSort2(); s message[i]; message[i] message[j]; message[j] s; } } } for(int i0; i message.length; i) { System.out.println(姓名message[i].getName()成绩message[i].getGrade()); } } } 方法二 public class ScoreSort3  { public static void main(String[] args)  { Scanner input new Scanner(System.in);         System.out.println(请输入学生个数); int num input.nextInt(); scoreData[] arr new scoreData[num]; for(int i0;inum;i) { System.out.println(请输入第 (i1) 个学生的姓名:) ; String stuName input.next();//将nextLine改为next nextline只读入了数字 未读入换行 System.out.println(请输入第 (i1) 个学生的成绩:); String stuScore input.next(); arr[i] new scoreData(stuName,stuScore); } System.out.println(-----------------------); System.out.println(降序排序结果输出); Arrays.sort(arr); for(int i0;iarr.length;i) { System.out.println(arr[i]); }         } } class  scoreData implements Comparable { private String name; private String score; public scoreData(String name, String score) { this.name name; this.score score; } //降序排序 public int compareTo(Object o) { scoreData s (scoreData)o; if(this.score.compareTo(s.score)0)//String类型的大小比较 { return 1; } else if(this.score.compareTo(s.score)0) { return -1; } return 0; } Override public String toString(){//重写toString方法 return 姓名 this.name 成绩 this.score; } } Arrays.sort public static void sort(Object[] a) 根据元素的 自然顺序对指定对象数组按升序进行排序。数组中的所有元素都必须实现 Comparable 接口。此外数组中的所有元素都必须是 可相互比较的也就是说对于数组中的任何 e1 和  e2 元素而言 e1.compareTo(e2) 不得抛出  ClassCastException。 保证此排序是稳定的不会因调用 sort 方法而对相等的元素进行重新排序。 该排序算法是一个经过修改的合并排序算法其中如果低子列表中的最高元素小于高子列表中的最低元素则忽略合并。此算法提供可保证的 n*log(n) 性能。 类型参数 T - 可以与此对象进行比较的那些对象的类型 接口 ComparableT 类型参数 T - 可以与此对象进行比较的那些对象的类型 public interface ComparableT 此接口强行对实现它的每个类的对象进行整体排序。这种排序被称为类的自然排序类的 compareTo 方法被称为它的自然比较方法。 实现此接口的对象列表和数组可以通过 Collections.sort和Arrays.sort进行自动排序。实现此接口的对象可以用作有序映射中的键或有序集合中的元素无需指定比较器。 对于类 C 的每一个 e1 和 e2 来说当且仅当 e1.compareTo(e2) 0 与e1.equals(e2) 具有相同的 boolean 值时类 C 的自然排序才叫做与 equals 一致。注意null 不是任何类的实例即使e.equals(null) 返回 falsee.compareTo(null) 也将抛出 NullPointerException。 建议虽然不是必需的最好使自然排序与 equals 一致。这是因为在使用自然排序与 equals 不一致的元素或键时没有显式比较器的有序集合和有序映射表行为表现“怪异”。尤其是这样的有序集合或有序映射表违背了根据equals 方法定义的集合或映射表的常规协定。 例如如果将两个键 a 和 b 添加到没有使用显式比较器的有序集合中使 (!a.equals(b) a.compareTo(b) 0)那么第二个add 操作将返回 false有序集合的大小没有增加因为从有序集合的角度来看a 和 b 是相等的。 实际上所有实现 Comparable 的 Java 核心类都具有与 equals 一致的自然排序。java.math.BigDecimal 是个例外它的自然排序将值相等但精确度不同的BigDecimal 对象比如 4.0 和 4.00视为相等。 从数学上讲定义给定类 C 上自然排序的关系式 如下 {(x, y)|x.compareTo(y) 0}。 整体排序的 商 是 {(x, y)|x.compareTo(y) 0}。 它直接遵循  compareTo 的协定商是  C 的 等价关系 自然排序是  C 的 整体排序 。当说到类的自然排序 与 equals 一致 时是指自然排序的商是由类的 equals(Object) 方法定义的等价关系。 {(x, y)|x.equals(y)}。 此接口是 Java Collections Framework 的成员。 从以下版本开始 1.2 另请参见 Comparator 方法摘要intcompareTo(T o)比较此对象与指定对象的顺序。 方法详细信息 compareTo int compareTo(T o) 比较此对象与指定对象的顺序。如果该对象小于、等于或大于指定对象则分别返回负整数、零或正整数。 实现类必须确保对于所有的 x 和 y 都存在 sgn(x.compareTo(y)) -sgn(y.compareTo(x)) 的关系。这意味着如果y.compareTo(x)抛出一个异常则 x.compareTo(y) 也要抛出一个异常。 实现类还必须确保关系是可传递的(x.compareTo(y)0 y.compareTo(z)0) 意味着 x.compareTo(z)0。 最后实现者必须确保 x.compareTo(y)0 意味着对于所有的 z都存在 sgn(x.compareTo(z)) sgn(y.compareTo(z))。 强烈推荐(x.compareTo(y)0) (x.equals(y)) 这种做法但并不是 严格要求这样做。一般来说任何实现Comparable 接口和违背此条件的类都应该清楚地指出这一事实。推荐如此阐述“注意此类具有与 equals 不一致的自然排序。” 在前面的描述中符号 sgn(expression) 指定 signum 数学函数该函数根据expression 的值是负数、零还是正数分别返回-1、0 或 1 中的一个值。 参数 o - 要比较的对象。 返回 负整数、零或正整数根据此对象是小于、等于还是大于指定对象。 抛出 ClassCastException - 如果指定对象的类型不允许它与此对象进行比较 另附上Arrays.sort用法 1. 数字排序 int[] intArray new int[] { 4, 1, 3, -23 }; Arrays.sort(intArray);  输出 [-23, 1, 3, 4] 2. 字符串排序先大写后小写 String[] strArray new String[] { z, a, C }; Arrays.sort(strArray);  输出 [C, a, z] 3. 严格按字母表顺序排序也就是忽略大小写排序 Case-insensitive sort Arrays.sort(strArray, String.CASE_INSENSITIVE_ORDER);  输出 [a, C, z] 4. 反向排序 Reverse-order sort Arrays.sort(strArray, Collections.reverseOrder());  输出[z, a, C] 5. 忽略大小写反向排序 Case-insensitive reverse-order sort Arrays.sort(strArray, String.CASE_INSENSITIVE_ORDER);  Collections.reverse(Arrays.asList(strArray));  输出 [z, C, a] 6、对象数组排序 要对一个对象数组排序 则要自己实现java.util.Comparator接口  例子  Common_User[] userListTempnew Common_User[temp.size()];  Arrays.sort(userListTemp, new PinyinComparator());  PinyinComparator 实现了Comparator接口重写了compare方法来告诉Arrays按照什么规则来比较两个对象的大小。
http://www.zqtcl.cn/news/767161/

相关文章:

  • 中企动力企业邮箱 手机邮箱河南网站建设优化推广
  • 广州seo网站多少钱王野天津音乐广播电台图片
  • 东莞网站制作十强怎么做一个链接网站
  • 深圳网站设计 建设首选wordpress 获取父页面
  • 大兴企业网站建设公司wordpress谷歌字体优化
  • 哈尔滨建设银行网站网站建设运营服务商
  • 重庆本地建站企业网站建设流程及费用
  • 网站建设需要用到那些语言简述网站建设和推广评价指标
  • 17网站一起做 佛山印刷做网站网上接单
  • 网站建设步骤 优帮云网站建设首选定制开发
  • 专门做家居的网站国内企业网站设计
  • 做网站时怎么取消鼠标悬停性价比最高网站建设
  • 三网合一网站模板网站上内容列表怎么做
  • 鲜花商城网站建设西安房产网站大全
  • 家庭宽带做网站空间一个数据库可以做几个网站
  • 环境设计公司排名搜索引擎seo是什么意思
  • 北京网站建设策划排名长春市建设集团股份有限公司
  • 网站建设项目怎么跟进客户安阳哪里有做网站的
  • 重庆定制网站建设公司郑州网站模板
  • 网站 建设 领导小组wordpress下拉 友情链接
  • 做网站用php广州最新新闻
  • 福州市住房和城乡建设局网站18款禁用观看黄入口
  • 西安网站制作工作室网页怎么做成网站
  • 做h5网站公司百度知道网页入口
  • 网站建设 中企动力上海在线设计房屋效果图
  • 河南宝盈建设集团有限公司网站代理二级分销系统
  • 青岛高级网站建设价格对外宣传及网站建设文件稿
  • 网络营销中自建网站建设局是干嘛的单位
  • 做网站的公司 贵阳流媒体网站建设
  • 北京建网站重庆安全建设工程信息网