(一)学习总结

1.在java中通过Scanner类完成控制台的输入,查阅JDK帮助文档,Scanner类实现基本数据输入的方法是什么?
代码开头加一句

Import java.util;

构建Scanner类对象

Scanner in = new Scanner(System.in);

特别注意String类型,next()键入空格会结束输入,nextLine()不会

package shiyan;
import java.util.Scanner;
public class Shiyan{
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int num = in.nextInt();
        System.out.println(num);
        float num1 = in.nextFloat();
        System.out.println(num1);
        double num2 = in.nextDouble();
        System.out.println(num2);
        String words = in.next();
        System.out.println(words);
        String words1 = in.nextLine();
        System.out.println(words1);
        }
}

2.Random类和Math类的random()方法都能产生随机数,这两种方式有什么区别,各有什么特点呢?

package shiyan;
public class Shiyan {

    public static void main(String[] args) {
        double a=Math.random()*100+1;
        System.out.println(a);
    }
}

math类的随机数,double类型产生一个1到100的小数

import java.util.Random;
public class Shiyan {
    public static void main(String[] args) {
        Random rand = new Random();
        int num=rand.nextInt(26)+54;
        System.out.println(num); //26~80
    }

random类开头加import java,util.Random;
rand.nextInt(26)表示0到26,
rand.nextInt(26)+54范围0~80
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");
        }
    }
}
package shiyan;
import java.math.BigDecimal;
import java.math.MathContext;
public class Shiyan{
    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");
        }
    }
}

看书379页,对照格式,不会损失精度

package shiyan1;
import java.util.Random;
import java.util.Scanner;
public class Caijiage {
    public static void main(String[] args) {
        Random rand = new Random();
        int price=rand.nextInt(100);
        System.out.println("猜猜多少钱:");
        for(int i=10; i>=0; i-- )
        {
            Scanner in = new Scanner(System.in);
            int inputPrice = in.nextInt();
            if(i==0) {
                System.out.println("you have try 10 times , and the true price is "+price);
            }
            else if(inputPrice<price) {
                System.out.println("low");
                System.out.println("and you have "+ (i-1) +" chance");
            }else if(inputPrice>price) {
                System.out.println("high");
                System.out.println("and you have "+ (i-1) +" chance");
            }else {
                System.out.println("true");
                System.out.println("you have try "+(10-i+1)+" times , and the true price is "+price);
                break;
            }
        }
    }

}
package shiyan1;
/*
 * 输出万年历
 * 设定1900.01.01为起点
    1970~1979
    1970 4
    1971 5
    1972 0
    1973 1
    1974 2
    1975 3
    1976 5
    1977 6
    1978 0
    1979 1
 */
import java.util.Scanner;
public class Wannianli {
    static boolean isLeap(int year){ //判断闰年
        if(year%400==0 || (year%4==0 && year%100!=0)){ //是闰年
            return true;
        }  

        else{
            return false;
        }
    }
    static final int N = 1900; //用N表示起始年份
    public static void main(String[] args){
        int n = 1;//1900年1月1日 是星期一
        int month[] = {0,31,28,31,30,31,30,31,31,30,31,30,31}; //用来存储月份的天数
        int year[] = new int[1001];  //用来存储每年1月1日是星期几
        year[0] = n;
        for(int i=1;i<year.length;i++){
            int days = 365;
            if(isLeap(i+N-1)){//如果它的前一年是闰年则需要加366
                days = 366;
                year[i] = (year[i-1] + days)%7;
            }
            else{
                year[i] = (year[i-1] + days)%7;
            }
        }
        /*
        for(int i=0;i<10;i++){
            System.out.println(year[i]);
        }
        */
        int Month ,Year;
        Scanner in = new Scanner(System.in);
        System.out.println("请输入年份在(1900~2900之间):");
        Year = in.nextInt();
        if(Year>2900 || Year<1900){
            System.out.println("输入年份不合法,请重新输入!");
            return;
        }
        //System.out.println(year[Year-1970]);
        System.out.println("请输入月份(1~12之间):");
        Month = in.nextInt();
        if(Month>12 || Month<1){
            System.out.println("输入月份不合法,请重新输入!");
            return;
        }
        System.out.println(" 星期日     " +"  星期一     "+"  星期二    "+"  星期三     "+"  星期四     "+"  星期五     "+"  星期六   ");
        System.out.println();
        if(isLeap(Year)){ //如果是闰年,2月改为29号
            month[2] = 29;
        }
        int day=0; //用来记录当前月的一号是今年的第几天
        for(int i=1;i<Month;i++){
            day = day + month[i];
        }  

        day = (year[Year-N]+day)%7;
        for(int i=0;i<7;i++){//输出控制
            if(day == i){
                System.out.print("  " + 1 + "   ");
                if(day == 6){
                    System.out.println();
                }
                break;
            }
            else{
                System.out.print("      ");
            }
        }
        for(int i=2;i<=month[Month];i++){
            if(i<10){
                System.out.print("  " + i + "   ");
            }
            else{
                System.out.print(" " + i + "   ");
            }
            if((day+i-1)%7 == 6){
                System.out.println();
            }
        }
    }
}

gitbash文件夹找不到了,明天继续弄,

Java技术 第一次作业的更多相关文章

  1. 2017《java技术预备作业》

    2017<java技术预备作业> 1.阅读邹欣老师的博客,谈谈你期望的师生关系是什么样的? 亦师亦友,很多人这样说,确实,倘若师生之间如果中间有些隔阂最终吃亏的始终是学生.我认为师生之间应 ...

  2. 2017《JAVA技术预备作业》 1502 陈明宇

    1.阅读邹欣老师的博客,谈谈你期望的师生关系是什么样的? 我期望的师生关系应该是亦师亦友的关系,美丽的校园是我们学生居住生活最久的地方而老师则是和我们接触最为密切的人.在课堂上,老师是辛勤的园丁,向我 ...

  3. 2017<java技术>预备作业计科冀浩然

    1.阅读邹欣老师的博客,谈谈你期望的师生关系是什么样的? 我期望的师生关系是相互融洽的,老师能够在上课的时候尽量多的教我们专业知识,可以尽量多和我们进行互动,课下能和我们如同朋友一般就可以了. 2.你 ...

  4. Java程序设计第一次作业

    虽说这学期Java比上学期的C语言要简单些许,但是初次面对java程序,还是有点难度的.

  5. JAVA的第一次作业

    读后感:这个学期开始接触一门新的学科就是JAVA,老师对这么学科介绍了很多,我也从中了解到了许多,它可能是相对于C语言而已可能要更加方便一些,也是现在世界上所用最多的语音(软件方面),C语言都是排在它 ...

  6. Java程序第一次作业

    public class yjj { public static void main(String[] args) { System.out.println("Hello Java" ...

  7. java 程序设计第一次作业

    public class Join{ public static void main(String args[]){ String s1=new String("hello"); ...

  8. Java第一次作业——Java语言基础

    <Java技术>第一次作业 学习总结 1.Scanner类实现基本数据输入方法 Scanner input=new Scanner(System.in); int num = input. ...

  9. java第一次作业0

    lsl321 java第一次作业 #1. 本章学习总结 你对于本章知识的学习总结 本章我们学习了各种java相关文件的使用,以及码云,博客,pat等程序辅助软件,这些对于我们专业的学习有非常大的帮助, ...

随机推荐

  1. nginx的前世今生

    Nginx最初的设计是称为一个http服务器,一个能够解决C10K问题的http服务器. 那么问题来了,什么是C10K呢?C10K问题即(单机10万个并发链接问题),这个概念最早是由Dan Kegel ...

  2. vue版 文字滚动

    用法:<marque :text="bannerText"></marque> 下载

  3. CORS在Spring中的实现

    CORS: 通常情况下浏览器禁止AJAX从外部获取资源,因此就衍生了CORS这一标准体系,来实现跨域请求. CORS是一个W3C标准,全称是"跨域资源共享"(Cross-origi ...

  4. HotSpot虚拟机对象探秘-笔记

    学习目的:探讨HotSpot虚拟机在Java堆中对象分配.布局和访问的全过程. 1.对象的创建 虚拟机在执行到一条new指令时,先要检查指令的参数(将要实例化的类)是否已经被加载.解析.初始化过,如果 ...

  5. 【图论】最短路问题之spfa

    写在算法前面: 前向星存图(一个神奇的超越邻接矩阵的存在) 首先讲一下需要定义的一些东西?? 1.head数组:head[点数]:head[i]表示以当前点i为起点的最后一条边(这里的最后指的是编号[ ...

  6. 使用 HttpClient 进行文件上传

    1.使用 AddPart 方法 public static void upload(String authorization,String baseUrl,String filePath,String ...

  7. [tomcat] tomcat简析(一)

    1.Tomcat的顶层结构 Tomcat中最顶层的容器叫Server,代表整个服务器,Server中包含至少一个Service,用于 具体提供服务. Service主要包含两部分:Connector和 ...

  8. CentOs 6.8配置yum源

    1:使用root权限,从根目录到yum.repo.d文件下 cd etc/yum.repos.d 2.备份ContOS.repo mv CentOS-Base.repo CentOS-Base.rep ...

  9. 从零开始学Python 三(网络爬虫)

    本章由网络爬虫的编写来学习python.首先写几行代码抓取百度首页,提提精神,代码如下: import urllib.request file=urllib.request.urlopen(" ...

  10. fibos开发踩坑集合

    fibos.js API资料: 与eosjs相比,fibos.js没有添加新功能,可以在eosjs项目页面https://developers.eos.io/eosio-nodeos/referenc ...