Java 实验一

Posted 天亮……

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 实验一相关的知识,希望对你有一定的参考价值。

一学习总结
1.scanner类的基本实现基本输入的方法:首先需要导入Scanner所在的包,java.util.Scanner。
可以使用不同的next方法将输入的文本转换成不同类型的值,如:nextInt,nextBoolean。
还要构造scanner对象,并与system.in关联,如:Scanner input=new Scanner(System.in);
调用scanner的各种方法完成输入操作,如:int num=input.nextInt();

import java.util.Scanner;

public class Test {
    public static void main(String args[]) { 
        String gchar= new String();
        Scanner input = new Scanner(System.in);
        System.out.println("nextLine方式接收:");
        gchar=input.nextLine();
        System.out.println(gchar);
    }     
}
  1. Random类
    实现的随机算法是伪随机,也就是有规则的随机,
    它的随机方法是设定随机种子的。
    Math类 此方法就是调用的Random类的nextDouble()方法。
    math的random只能获得一个随机数
    Math类的random方法使用比较方便,不需要导包、创建对象。
        public class RandomNum{
            public static void main(String[] args){
                    Random r1 = new Random(100);//第一个Random对象r1,随机种子100
                    Random r2 = new Random(100);//第二个Random对象r2,随机种子100
                    System.out.println("r1产生的值:"+r1.nextInt());
                    System.out.println("r2产生的值:"+r2.nextInt());
                    System.out.println("Math.random产生的值:"+(int)(Math.random()*100));
}
}

3.运行下列程序,结果是什么?查阅资料,分析为什么。

public class Test {
    public static void main(String args[]) { 
        double a = 0.1;
        double b = 0.1;
        double c = 0.1;
        if((a + b + c) == 0.3){
            System.out.println("等于0.3");
        }else {
            System.out.println("不等于0.3");
        }
    }     
}

该程序运行结果为:不等于0.3
原因:浮点型数据在进行运算时有极小误差。
为了处理精度损失的问题,可以使用java.math.BigDecimal类,查阅JDK帮助文档或教材p378,对上述程序进行修改。

import java.math.BigDecimal;
import java.math.MathContext;
public class Test {
       public static void main(String args[]) { 
           BigDecimal a = new BigDecimal(0.1);
           BigDecimal b = new BigDecimal(0.1);
           BigDecimal c = new BigDecimal(0.1);
            if(a.add(b).add(c).round(new MathContext(1)).equals(new BigDecimal("0.3"))){
                System.out.println("等于0.3");
            }else {
                System.out.println("不等于0.3");
            }
        }
    }

以上程序输出结果为:等于0.3
4.本次学习要点中其他需要总结的内容:因人而异,根据自己的学习情况,记录难掌握或难理解的内容,以及学有心得的内容。还存在哪些问题,也可以提出来,对于同学在博客中提出的问题,大家可以积极讨论,互帮互学。
二、实验总结
1.看商品猜价格
程序设计思路:
1.产生一个随机数的函数,给出价格
2.输入成绩
3.使其与产生的随机数比较(最多10次)
4.在十次内两数相等,则输出价格和输入次数,否则直接输出价格
2.万年历
程序设计思路:
1.判断是否是闰年
2.写出每月天数
3.计算出要输入的年月与1990年1月1日相距多少天
4.输出要输出的月份日历
3.评分系统
程序设计思路:
1.输入十位评委分别为五位选手的评分
2.写出求每位选手的得分的最大值 最小值 和 平均数的方法
3.为最终的得分按降序排序
问题:排序方法
解决:可直接用升序排序的方法,然后倒着输出。
三、代码托管

以上是关于Java 实验一的主要内容,如果未能解决你的问题,请参考以下文章

汇编实验五

开发工具 | 即将jupyter的新一代notebook

汇编实验9

C语言循环结构实验报告

动态SQL基础概念复习(Javaweb作业5)

java登陆界面实验报告