java day04记录
本文主要记录arr数组用法、count计算、arr倒排序技巧案例
package day4homework; import java.util.Scanner;
/*
从键盘上输入10个整数,合法值位1、2或3,不是这3个数则为非法数字。试编程统计每个整数和非法数字的个数。
1.创建键盘录入对象
2.定义长度为10的int类型的数组
3.定义int类型的变量count1(统计1的个数)、count2(统计2的个数)、count3(统计3的个数)、count4(统计非法数字的个数)
4.利用for循环给数组元素赋值
5.利用for循环遍历数组
(1)获取当前元素
(2)使用if进行判断
a.如果等于1 count1++
b.否则,如果等于2 count2++
c.否则,如果等于3 count3++
d.否则 count4++ 6.打印统计结果*/
public class ArrayCount4 {
public static void main(String[] args) {
int[] arr = new int[];
int count = ;
int count1 = ;
int count2 = ;
for (int i=;i<;i++) {
Scanner s = new Scanner(System.in);
int putdate = s.nextInt();
arr[i] = putdate;
if (arr[i]==) {
count++;
}else if (arr[i]==) {
count1++;
}else {
count2++;
}
}
System.out.println("1:"+count);
System.out.println("2:"+count1);
System.out.println("不合法:"+count2);
}
}
输出结果:

package day4homework; import java.util.Scanner;
/*
假设有一个长度为5的数组,数组元素通过键盘录入,如下所示:
int[] arr = {1,3,-1,5,-2}
要求:
创建一个新数组newArr[],新数组中元素的存放顺序与原数组中的元素逆序,并且如果原数组中的元素值小于0,
在新数组中按0存储。最后输出原数组和新数组中的内容 1.创建键盘录入对象
2.定义长度为5的int类型的数组arr
3.利用for循环通过键盘录入给数组元素赋值
4.定义长度为5的int类型的新数组newArr,定义int类型的变量index=0,用来表示新数组的元素索引
5.倒着遍历原数组
(1)定义int类型的变量num,并将数组当前元素的值赋值给num
(2)使用if判断num的值
a.如果num>=0,直接将num赋值给新数组的当前元素,index++
b.否则直接将0复制给新数组的当前元素,index++
*/
public class Array_DaoXu5 {
public static void main(String[] args) {
int[] arr = new int[];
System.out.println("请输入:"); for(int i=;i<=;i++) {
Scanner s = new Scanner(System.in);
int putdate = s.nextInt();
arr[i] = putdate;
System.out.println(arr[i]);
} int[] arr2 = new int[];
int count = -;
for(int i=;i>=;i--) {
count++;//count 从0加到4
if(arr[i]>=) {
arr2[count] = arr[i];
}else {
arr2[count] = ;
}
System.out.println(arr2[count]);
}
}
} //public class Test5 {
// public static void main(String[] args) {
// //定义一个数组,用来接收数据
// int[] arr = new int[5];
// //创建键盘录入对象
// Scanner sc = new Scanner(System.in);
// //键盘录入数据,将获取到的数据存入到数组中
// for(int i = 0; i < arr.length; i++) {
// System.out.println("请输入第" + (i + 1) + "个数据:");
// //获取键盘录入数据
// int a = sc.nextInt();
// arr[i] = a;
// }
// //定义新数组,用来存储要求的数据,长度和源数组一致
// int[] newArr = new int[arr.length];
// //遍历源数组
// for(int i = 0; i < arr.length; i++) {
// //倒着获取每一个元素
// int a = arr[arr.length - 1 - i];
// //判断该元素是否是负数,如果是,给新元素赋0
// if(a < 0) {
// newArr[i] = 0;
// } else {//如果不是,将该元素赋值给新数组
// newArr[i] = a;
// }
// }
// //打印结果
// System.out.println("原数组内容:");
// for(int i = 0; i < arr.length; i++) {
// System.out.print(arr[i] + " ");
// }
// System.out.println();
// System.out.println("新数组内容:");
// for(int i = 0; i < newArr.length; i++) {
// System.out.print(newArr[i] + " ");
// }
// }
//}
输出结果

package day4homework; import org.omg.Messaging.SYNC_WITH_TRANSPORT; import java.util.Scanner;
/*
假设一个简单的在ATM的取款过程如下:首先提示用户输入密码(password),
最多只能输入3次,超过3次则提示用户"密码错误,请取卡"交易结束。
如果用户密码正确,再提示用户输入金额(amount),ATM只能输出100元的纸币,一次取钱数要求最低0元,最高1000元。
如果用户输入的金额符合上述要求,则打印输出用户取的钱数,最后提示用户"交易完成,请取卡",否则提示用户重新输入金额。假设用户密码是"111111"。
*/
public class ArrayATM {
public static void main(String[] args) {
System.out.println("请输入密码:");
int password = ;
for(int i=;i<;i++) {
Scanner s = new Scanner(System.in);
int putdate = s.nextInt();
if(putdate == password) {
System.out.println("恭喜,输入正确!"); while (true) {
System.out.println("请输入取款金额:");
int many = s.nextInt();
int many2 = ;
if (many%%==) {
many2 = many;
if(many2/<=&many2/>) {
System.out.println("请取走现金:"+many2);
break;
}else {
System.out.println("输入失败,请重新输入");
break;
}
}else {
System.out.println("输入失败,请重新输入2");
} }
break;
}else {
if(i==) {
System.out.println("密码错误,请取卡~~");
break;
} System.out.println("输入错误,请重新输入:");
}
}
}
}
输出结果:

java day04记录的更多相关文章
- Java 日志记录规则
Java 日志记录规则 规则一:日志是面向读者的 我们不应该让无价值的信息使日志文件变得乱糟糟,比如说完整打印所有的实体字段. 通常,实体名字和其逻辑关键字足以识别在表格中的一条记录了. 规则二:匹配 ...
- 补充Java面试记录
补充Java面试记录 背景:这两天面试遇到的部分问题都分散在了前面两篇文摘中,这里再做一些其他的记录,以备不时之需! 一.谈谈你对SpringBoot的理解? SpringBoot简介:SpringB ...
- Java问题记录——循环里的二次判断与状态更新
Java问题记录——循环里的二次判断与状态更新 摘要:本文主要记录了在循环操作时可能出现的问题. 问题重现 在使用循环结构时,如果使用了定时任务,或者代码会多次调用循环结构,可能会导致有些对象会被循环 ...
- Java问题记录——OutOfMemoryError
Java问题记录——OutOfMemoryError 摘要:本文主要分析了OutOfMemoryError的产生原因. 没有分页导致占用大量内存 查看进程 使用 jps 命令查看当前运行的Java进程 ...
- Java问题记录——IllegalMonitorStateException
Java问题记录——IllegalMonitorStateException 摘要:本文主要分析了IllegalMonitorStateException的产生原因. 部分内容来自以下博客: http ...
- SLF4J (The Simple Logging Facade for Java)使用记录
SLF4J (The Simple Logging Facade for Java)使用记录 官网 http://www.slf4j.org/ 参考资料 官方文档 什么是 SLF4J? 官网: The ...
- 【Java】记录一次代码优化
前不久的项目时间紧张,为了尽快完成原型开发,写了一段效率相当低的代码. 最近几天闲下来,主动把之前的代码优化了一下:) 标签:Java.Mybatis.MySQL 概况:本地系统从另外一个系统得到 ...
- 普华永道高级JAVA面试记录
最近在考虑换个工作 原因?咱能不逗吗? 一面感觉发挥不错 二面之后累觉不爱 基本上浪费了半天的工资(好多钱啊~~~) PWD上海地址在浦东软件园 工作环境说实话没我现在工作的环境好,不过里面的人 ...
- Java学习笔记(十九)——Java 日志记录 AND log4j
[前面的话] 学习的进度应该稍微在快一点. Java日志到了必须学习怎么使用的时候了,因为在项目中要进行使用.基础性文章,选择性阅读. [结构] java日志对调试,记录运行,问题定位都起到了很重要的 ...
随机推荐
- centOS7python版本升到3
我们使用Python源代码编译的方式安装python3. 一.安装必要工具 yum-utils ,它的功能是管理repository及扩展包的工具 (主要是针对repository) $ sudo y ...
- mysql数据库设计文档-导出字段设计
navicat 是我一直在使用的一个数据库操作工具,非常方便快捷.如果没有可用navicat可以留言邮箱我直接发您. 今天来介绍一下使用navicat导出数据库字段设计.废话不多说,先看导出效果. 查 ...
- drf-jwt分页器详解
drf偏移分页组件 pahenations.py from rest_framework.pagination import LimitOffsetPagination class MyLimitOf ...
- hdu1224SPFA求最长路加上打印路径
题目链接:http://icpc.njust.edu.cn/Problem/Hdu/1224/ 无负环. 代码如下: #include<bits/stdc++.h> using names ...
- 第三周java实验报告
实验三 Java基本程序设计(2) 实验时间 2018-9-13 第一部分:理论知识回顾 第一章 再次了解了java“白皮书”的关键术语,java的常见术语,对于大多数“白皮书”的关键术语依然 ...
- 【spring springmvc】这里有你想要的SpringMVC的REST风格的四种请求方式
概述 之前的文章springmvc使用注解声明控制器与请求映射有简单提到过控制器与请求映射,这一次就详细讲解一下SpringMVC的REST风格的四种请求方式及其使用方法. 你能get的知识点 1.什 ...
- Javascript之盒子拖拽(跟随鼠标、边界限定、轨迹回放)
本文通过拖拽案例,实现"跟随鼠标.边界限定.轨迹回放"三大效果: 完整代码中有详尽注释,故不再进行细致讲解: 对于案例中需要注意的重点或易错点问题,会总结在最后. 效果图(仅演示左 ...
- Java进阶之心态
不管什么时候学习都是一个积累的过程,量变才能引起质变.一口吃一个胖子是不存在的,成长的路上没有捷径,只有学到的知识才是我们走向远方道路的基石!
- vim-0-indent(缩进)
缩进: 参考自http://liuzhijun.iteye.com/blog/1831548,http://blog.csdn.net/chenxiang6891/article/details/41 ...
- Redis系列(一):小试牛刀
引言 随着互联网的高速发展,传统的关系数据库(如MySQL.Microsoft SQL Server等)已不能满足日益增长的业务需求,如商品秒杀.抢购等及时性非常强的功能,随着应用高并发的访问,会造成 ...