Java技术 第一次作业
(一)学习总结
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技术 第一次作业的更多相关文章
- 2017《java技术预备作业》
2017<java技术预备作业> 1.阅读邹欣老师的博客,谈谈你期望的师生关系是什么样的? 亦师亦友,很多人这样说,确实,倘若师生之间如果中间有些隔阂最终吃亏的始终是学生.我认为师生之间应 ...
- 2017《JAVA技术预备作业》 1502 陈明宇
1.阅读邹欣老师的博客,谈谈你期望的师生关系是什么样的? 我期望的师生关系应该是亦师亦友的关系,美丽的校园是我们学生居住生活最久的地方而老师则是和我们接触最为密切的人.在课堂上,老师是辛勤的园丁,向我 ...
- 2017<java技术>预备作业计科冀浩然
1.阅读邹欣老师的博客,谈谈你期望的师生关系是什么样的? 我期望的师生关系是相互融洽的,老师能够在上课的时候尽量多的教我们专业知识,可以尽量多和我们进行互动,课下能和我们如同朋友一般就可以了. 2.你 ...
- Java程序设计第一次作业
虽说这学期Java比上学期的C语言要简单些许,但是初次面对java程序,还是有点难度的.
- JAVA的第一次作业
读后感:这个学期开始接触一门新的学科就是JAVA,老师对这么学科介绍了很多,我也从中了解到了许多,它可能是相对于C语言而已可能要更加方便一些,也是现在世界上所用最多的语音(软件方面),C语言都是排在它 ...
- Java程序第一次作业
public class yjj { public static void main(String[] args) { System.out.println("Hello Java" ...
- java 程序设计第一次作业
public class Join{ public static void main(String args[]){ String s1=new String("hello"); ...
- Java第一次作业——Java语言基础
<Java技术>第一次作业 学习总结 1.Scanner类实现基本数据输入方法 Scanner input=new Scanner(System.in); int num = input. ...
- java第一次作业0
lsl321 java第一次作业 #1. 本章学习总结 你对于本章知识的学习总结 本章我们学习了各种java相关文件的使用,以及码云,博客,pat等程序辅助软件,这些对于我们专业的学习有非常大的帮助, ...
随机推荐
- CentOS7服务管理
1.在/usr/lib/systemd/system目录下建立服务启动文件,文件格式:[root@Centos7 ]# cat /usr/lib/systemd/system/nginx.servic ...
- spoj839Optimal Marks
题意:略 怎样判断属于S,T集合. 如果从S出发到不了某点,该点出发也到不了T,那么割给那边都行. 如果S出发能到该点,该点出发也能到T,这种情况下dinic没结束. 只能从S到该点:只能分到S集.只 ...
- jieba库的使用和好玩的词云
1.jieba库基本介绍 (1).jieba库概述 jieba是优秀的中文分词第三方库 - 中文文本需要通过分词获得单个的词语 - jieba是优秀的中文分词第三方库,需要额外安装 - ...
- 使用 HttpClient 进行文件上传
1.使用 AddPart 方法 public static void upload(String authorization,String baseUrl,String filePath,String ...
- jquery 判断浏览器版本
如果你也是Jquery最初的使用者,那么你一定经历过这样判断浏览器的时代:$.browser.msie && $.browser.version,你目前使用的组件里可能还有应用.但是J ...
- [luogu P2521] [HAOI2011]防线修建
[luogu P2521] [HAOI2011]防线修建 题目描述 近来A国和B国的矛盾激化,为了预防不测,A国准备修建一条长长的防线,当然修建防线的话,肯定要把需要保护的城市修在防线内部了.可是A国 ...
- 李航《统计学习方法》CH03
CH03 k近邻法 前言 章节目录 k近邻算法 k近邻模型 模型 距离度量 k值选择 分类决策规则 k近邻法的实现: KDTree 构造KDTree 搜索KDTree 导读 kNN是一种基本分类与回归 ...
- dva.js 上手
来源:https://pengtikui.cn/dva.js-get-started/ ——------------------------------------------------------ ...
- mysql创建table
innodb 存储引擎,创建一个表 本文分析创建一个段.待叙,主要说明是如何创建一文件,并在文件中分配一个索引. 上面是创建一个表的调用图.创建文件和创建一个btr /**************** ...
- lr-web services协议
1.web services协议简介 web services协议是建立可交互操作的分布式应用程序的新平台,它通过一系列标准和协议来保证程序之间的动态链接,其中最基本的协议包括soap,wsdl,ud ...