java练习(一)数组、集合的运用
有这么一个有趣的问题,问:
有这么一个不重复的自然数数组,自然数长度为N,而数组长度为N-2,依次随机把自然数放进数组中,请找出2个没有被放进去的自然数。
例如:这个自然数数组是[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]这十个数,某次随机放入的顺序是[2, 1, 3, 5, 7, 9, 0, 4],那么6和8这两个数没有被放入进来。
(哇,超级简单的一个问题啊,用javascript几分钟就搞定的哇,然后我就用java试试,然后发现,哇,怎么这么麻烦。不过顺带着学到了不少东西)
代码
package com.test.basic; import java.util.ArrayList;
import java.util.List; /**
* 有这么一个有趣的问题,问:
* 有这么一个不重复的自然数数组,自然数长度为N,而数组长度为N-2,依次随机把自然数放进数组中,请找出2个没有被放进去的自然数。
* 例如:这个自然数数组是[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]这十个数,某次随机放入的顺序是[2, 1, 3, 5, 7, 9, 0, 4],
* 那么6和8这两个数没有被放入进来。
*/
public class text1 {
public static void main(String []args){
int []arr1 = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
int []arr2 = {2, 1, 3, 5, 7, 9, 0, 4};
List<Integer> list = new ArrayList<Integer>(); for(int a1:arr1){
Boolean flag = true;
for(int a2:arr2){
if(a1 == a2){
flag = false;
break;
}
}
if(flag){
list.add(a1);
}
}
System.out.println(list);
}
}
学习
声明数组
数组的声明由几种方式:
1,String []a = new String[length];再赋值
a[0]=?;.......
2,new完就直接初始化:
String []a = new String[]{?,?...};
3.你甚至不必new:
String []a = {?,?....}同样没问题。
(吐槽:哇,跟js贼不同。一开始我都懵b了,重点是,数组长度声明好就不能动了!!!哇,好坑,然后就百度,说是用集合,我就继续去学习集合了)
关于循环
for和while,始终有种感觉,既生瑜何生亮???
感觉可以被替代,为毛要两个
然后就百度了好多,最后看了好多总结就是,
为了加强代码的灵活和可读性!!!??exm?好吧,你们狠,你们写的语言,你们说的都对。
各位大佬,要是有什么高见记得给我说说
集合
感觉就是可以增减长度的数组,就跟es6里面刚刚出来的那些set,weak那些有点像,不过不是太理解,等会再系统的学习下
哇,感想,本来看到这个小程序的时候,我真的感觉超级简单,但是吧,却写了有一两个小时,问了两三个人,百度了好多。不过继续加油了我
java练习(一)数组、集合的运用的更多相关文章
- 统计java中字符串,数组,集合大小(长度)
字符串长度用String.length(); 数组用String[].length; 集合用collection.size();
- Java比较器对数组,集合排序一
数组排序非常简单,有前辈们的各种排序算法,再加上Java中强大的数组辅助类Arrays与集合辅助类Collections,使得排序变得非常简单,如果说结合比较器Comparator接口和Collato ...
- Java将Excel解析为数组集合
Java将Excel解析为数组集合 相关 jar 包: jxl-2.6.jar jar 包下载:http://files.cnblogs.com/files/liaolongjun/excel-jar ...
- java数组集合元素的查找
java数组和集合的元素查找类似,下面以集合为例. 数组集合元素查找分为两类: 基本查找: 二分折半查找: 基本查找: 两种方式都是for循环来判断,一种通过索引值来判断,一种通过数组索引判断. 索引 ...
- Java中的数组与集合
此文转载自:http://student-lp.iteye.com/blog/2082362 在java编程的过程中,我们不能确定某一类型的对象到底会需要多少,为了解决这个问题,java提供了容纳对象 ...
- java中 列表,集合,数组之间的转换
java中 列表,集合,数组之间的转换 java中 列表,集合,数组之间的转换 java中 列表,集合,数组之间的转换 List和Set都是接口,它们继承Collection(集合),集合里面任何数据 ...
- java中的数组与集合相互转换
1.数组转换成集合 数组转换为集合,用Arrays.asList方法. public static void main(String[] args) { String[] arr = {"a ...
- Java 对象,数组 与 JSON 字符串 相互转化
当 Java 对象中包含 数组集合对象时,将 JSON 字符串转成此对象. public class Cart{} public class MemberCoupon{} public class C ...
- Java多线程系列--“JUC集合”02之 CopyOnWriteArrayList
概要 本章是"JUC系列"的CopyOnWriteArrayList篇.接下来,会先对CopyOnWriteArrayList进行基本介绍,然后再说明它的原理,接着通过代码去分析, ...
- Java多线程系列--“JUC集合”03之 CopyOnWriteArraySet
概要 本章是JUC系列中的CopyOnWriteArraySet篇.接下来,会先对CopyOnWriteArraySet进行基本介绍,然后再说明它的原理,接着通过代码去分析,最后通过示例更进一步的了解 ...
随机推荐
- Visual Studio 2013 Web开发新特性
微软正式发布Visual Studio 2013 RTM版,微软还发布了Visual Studio 2013的最终版本..NET 4.5.1以及Team Foundation Server 2013. ...
- Sailing
Sailing 目录 1基本信息 2歌曲简介 3歌词内容 4歌手简介 5专辑介绍 1基本信息编辑 歌曲: Sailing 所属专辑: Atlantic Crossing 艺人:Rod Stewart[ ...
- Oracle SQL Developer官方工具 初探
查询表数据(打开工作表:Alt+F10) 运行SQL语句:(格式化:Ctrl+F7) 自动完成语句的设置 自动弹出的速度加快,并且将命中率提高,进行如下设置: 由于我的输入法占用了CTRL+,的快捷建 ...
- 使用FASTJSON做反序列化的时间格式处理
JSONObject.DEFFAULT_DATE_FORMAT = "yyyy-MM-dd'T'HH:mm:ss.mmm"; Productorder tmp1 = JSONObj ...
- Oracle从一个用户导出数据到另一个用户
如果想导入的用户已经存在: 1. 导出用户 expdp user1/pass1 directory=dumpdir dumpfile=user1.dmp 2. 导入用户 impdp user2/pas ...
- 1251. 序列终结者【平衡树-splay】
Description 网上有许多题,就是给定一个序列,要你支持几种操作:A.B.C.D.一看另一道题,又是一个序列 要支持几种操作:D.C.B.A.尤其是我们这里的某人,出模拟试题,居然还出了一道这 ...
- 全局唯一Id:雪花算法
雪花算法-snowflake 分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的. 有 ...
- Java基础加强之反射
1.什么是反射? 反射其实就是动态的加载类,我们在写JDBC的时候加载驱动Class.forName("xxx")时就涉及到了反射. 反射机制是在运行状态中,对于任意一个类,都能够 ...
- MySQL 更改数据库数据存储目录
MySQL数据库默认的数据库文件位于 /var/lib/mysql 下,有时候由于存储规划等原因,需要更改 MySQL 数据库的数据存储目录. 下文总结整理了实践过程的操作步骤. 1 确认MySQ ...
- 20155314 2016-2017-2 《Java程序设计》第10周学习总结
20155314 2016-2017-2 <Java程序设计>第10周学习总结 教材学习内容总结 了解计算机网络基础 掌握Java Socket编程 理解混合密码系统 掌握Java 密码技 ...